跳到主要內容

發表文章

目前顯示的是 3月, 2013的文章

Symfony--a PHP Framework

PHP長期以來都提供了良好的 Web Application 開發環境,目前流行的開發過程是採用 MVC or MVP or MVVM ,而 MVC 的開發環境是在 PHP Framework 最被使用的一種方式,在之前認為 YII 是一個不錯的 PPH Framework,主要是快速、輕巧,但是今天在 php master 中看到一位開發者是 Using Zend Framework with Symfony ,如果 Symfony 能與 Zend Framework 結合的很好,是乎可以考慮使用這樣的組合來開發 Web Application,而不需要使用到 Wt(a C++ library for developing web applications ) or Qt 5 的平台來開發 Web Application。

3/27 震出盲斷層

在 March 27, 2013 早上 10 點左右,台中又發生一次有感地震,將學校許多教室的牆壁、水管、天花板都震碎,於是幫忙到各棟大樓拍照存證,也因此忙了一整天。 或許是 921 大地震的陰影,對於這次的地震,大家都急忙逃出室外,但也震出了 台灣的地質專家 爭論不休的「 盲斷層 」或雙冬斷層。不管是盲斷層或雙冬斷層,會搖的都是斷層,都會造成人員的死傷, 這是地震也死傷了不少人 ,而這些死傷的是民眾,是一般的平民百姓,不是學者、專家,更不是大官、民代們。對於這次的地震,還是憂心 台灣的核電廠都是處於斷層帶 上,而圍阻體只是能防止正常運作時,不要將輻射線釋放到它的外面而已,一旦發生意外事故,在日本 311 大地震時,就已經證明無法阻擋輻射外洩,屆時是否會造成更多的傷亡,台灣的人民將無處可逃,又台灣的體經濟難道不會受到嚴重的影響嗎?唯有儘早達到 非核家園 ,才是台灣要走的一條能源大道。

Compiling Haru Library with Cmake + CodeBlock

Haru Library 是一種產生 pdf 的 library,所提供的 API 可以支援許多不同的程式語言,當然包括 C, C++。要安裝這個 Library 要下載 source code 來安裝,安裝的步驟如下: 1. 下載 Haru Library Latest development release: 2.3.0RC2 2. 開啟 cmake ,點選「where is the source code」 3.  在點選「where to build the binaries」,最後面加入 /build 4. 按下「Configure」,選擇「Code:Block - MinGW Makefile」 5. 會出現「error in configuration process:poject maybe is invaild」,調整 CMAKE_MAKE_PROGRAM 的設定路徑,以及勾選「CMAKE_USE_RELATIVE_PATHS」  6. 再次按下「Configure」(由於 STL 的 MinGW 套件已經有 PNG, ZLIB 的Library,所以不需要自行編譯) 7.檢查一下各個 Group 中,每一個套件的設定值,調整 CMAKE group 的 CMAKE_INSTALL_PERFIX 設為:「d:\Library\libharu」目錄 8. 如果沒有什麼問題,再次按下「Configure」 9. 接下來按下「Generate」 10. 到 D:/library/src/libharu-RELEASE_2_3_0RC2/build 目錄中,開啟 libharu.cbp 11. build libharu.cbp 時會出現錯誤,是因為程式有 bug ,需要修改下列的程式碼:      在 hpdf_image_ccitt.c 程式中,修改 753行將 「HPDF_Image」改成「HPDF_EXPORT(HPDF_Image)」。 12. 測試 example 的程式是否可以執行

LibreOffice on Windows x64

目前的電腦的硬體大致都是 x64 的架構,所以不管是家裡或者是辦公室的電腦,都是安裝 Windows x64 的作業系統。而之前安裝 LibreOffice 時,都是使用 Writer,  Calc, Drawing 的套件,並沒有使用 Base 的功能,而能夠正常的使用它。但是,最近要使用 Base 來製作 Database 時,卻發現 Base 無法開啟「資料表」,要求使用「另一種版本的 JRE」。雖然在 LibreOffice 的網站說:「java 在 x64的目錄中(C:\Program Files)中也會複製到 x32 的目錄中(C:\Program Files (x86))」讓程式可以運作,只是,那可能是:「只可以執行 Writer,  Calc, Drawing 程式。」因此結論是:LibreOffice 在 Windows 系統中只有 x86 的版本,所以 Java 的版本也需要安裝 x86 的版本,否則 LibreOffice 中的 base 無法正常執行。 在 Win64 作業系統中,有兩個目錄,分別存放著 Win32 及 Win64 的程式,Win32 的目錄是 C:\Program Files (x86) 目錄, Win64 是 C:\Program File。相同的,在 C:\Windows 目錄底下,也有兩個目錄,存放著 Windows 系統的 lib, dll 檔案。在 C:\Windows\System32目錄是存著 Win32 的檔案,在 C:\Windows\SysWOW64 目錄是存著 Win64 的檔案。摘要 Windows x64 系統下的 Win32, Win64 的目錄結構如下: Win32 :   1.  C:\Program Files (x86)   2.  C:\Windows\System32 Win64:   1.  C:\Program File   2.  C:\Windows\SysWOW64

LibreOffice cloud coming soon

從 OpenOffice 2.x 到 LibreOffice 4.0,一直希望大家能使用這個也可以達到 Microsoft Office 功能的免費套裝軟體,特別是 LibreOffice 提供了畫流程圖(Drawing)的功能,不像 Microsoft Office Suite 中還要另外安裝 visio ,不過,人類似乎不太願意改變現狀,只要不是出我的錢,是公家的錢,還是要使用 Microsoft Office 就好。如果 Microsoft Office 軟體授權費用是要出自己的錢時,那麼 LibreOffice 在公家機關推動時,就會快一些,不是嗎? 言歸正傳,在 Italo Vignoli's Blog 中指出: Android port of LibreOffice was nearing completion, pointing out that the porting of the office suite’s code was at around 80% complete 由於雲端的技術越來越成熟,應用程式也越來越多的時候, Microsoft Office 對於桌上型電腦的影響力也將會越來越小,到時候,我所期望可以在 Unix-like OS 中工作的日子也越來越近了。( 除了公文系統以外 ,但可以在 Unix-like 中架設 VM 來處理)。

cmd 程式無法執行的解決步驟

因為要設定 cmd 的編碼方式為 Unicode 編碼( chcp 65001),可能不小心修改了編碼,而導致cmd 無法開啟,主要的原因是:「cmd 變成沒有編碼」,所以才造成 cmd 無法開啟。在 Windows 8 中要恢復 cmd 編碼的步驟如下: 1. 滑鼠移到左上角,會出現功能的選項,點選「搜尋」的圖示 2. 在輸入的格子中,輸入「cmd」但是不要按下 enter 3. 滑鼠移到「cmd 命令提示字元」,,按下「滑鼠右鍵」 4. 下面會出現一些選項,點選「開啟檔案位置」,如此可以找到 cmd 命令提示字元的位置 5. 在「 命令提示字元」檔案中按下滑鼠右鍵,並點選「內容」 6. 點選「選項」,把「950 - Big 5 繁體中文」的編碼加入  

非核家園才是核安的最佳保證

昨天的新聞是:「 經長:核四檢測若不安全 不必公投 」,那為何要先宣佈「 核四公投 」這個議題呢?唉!決策就是如此的草率,當檢測真的不通過時,那先前拋出「 核四公投 」這個議題不就等於是「當我沒說」來收場嗎?這裡所謂的核安又是什麼標準?真是太耐人尋味?在 有話好說的節目中,專訪了林宗堯博士 ,他說了一句話:「沒有絕對的核安」,可以理解這句話,如同「沒有絕對的資訊安全」一樣。所以,如果用最高的標準來檢測核四,則「非核家園才是核安的最佳保證」。 在20幾歲時就對於核電廠的安全非常的關心,當時是連戰當行政院長,要興建核四時,對於主張非核家園的抗議人數,雖然少數,無法與這次 309 廢核大遊行相比,但當時自己的想法就是:「台灣就只有那麼大,如何經得起一場"萬一"的核災」,況且,從各國的核能災害告訴我,「圍阻體」是無法擋住輻射外洩,以及核災主要的原因是人為因素、天然災害等所造成的。而在民國80幾年時,核三廠出海口出現「柲雕魚」時,官方的說法是:「因為海水的溫度所造成的」,但是,這只是「官方的說法」,有核三廠高級的長官告訴我:「不要到附近海域」,也就一直以來,堅持這「非核家園」的想法。事隔今日,由於日本 311 福島核電的災害,才讓台灣民眾覺醒,才體認到「非核家園才是核安的最佳保證」。不過,從 309 廢核大遊行北、中、南的參與人數可以看出,最接近核四的北部民眾,比較有熱烈的響應,南部有核三廠的威脅,參與人數次之,最後是地處於核災威脅最小的中部。這是早就可以預期的結果,如果要舉辦公投,參與投票的人數也應該是如此的參與情形吧? 自從行政院長宣佈「 核四公投 」這個議題以來,到近日執政黨立委所提出核四公投主文:「 你是否同意核四廠停止興建不得運轉? 」,確實如之前「 核四公投這個震撼彈 」所提到:「一定是停建核四」,而不是「續建核四」,在 中國時報的一篇社論 已經清楚的點出「核四公投」的政治手段,一直以來,都不贊同「 核四以公投來決定 」,而執政者硬要公投,在沒有絕對安全的核安之下,不管是支持核四,還是反對核四的所有台灣人民,才是這次公投最後的輸家。

Using Qt for Windows x64(VS 2012) with Boost Library

在 Qt 5.0 版本發行時,最早只有 Visual Studio 2010 的版本,後來分別發行 MinGW 4.7 以及 VS 2012 的版本,對於 Qt 這個 IDE 如何使用 Boost Library,設定的過程說明如下: Qt for MinGW compiler: 1. 下載 STL 所 compile 的 MinGW 套件 ,其中包含了 boost library 2. 開啟 Qt,然後建立一個 new project for c++ 3. 加入 Boost Library 的路徑: 在 .pro 的設定檔中加入下面的路徑 INCLUDEPATH += D:/libraries/ include LIBS += -LD:/libraries/lib/ -lboost_regex 4. 將 main.cpp 的內容改成 boost's Getting Started 的程式 : #include <boost/regex.hpp> #include <iostream> #include <string> int main() { std::string line; boost::regex pat( "^Subject: (Re: |Aw: )*(.*)" ); while (std::cin) { std::getline(std::cin, line); boost::smatch matches; if (boost::regex_match(line, matches, pat)) std::cout << matches[2] << std::endl; } } 5. 測試: 輸入 "Subject: Hello Boost" ------------------------------------------------------------------------------- Qt for Visual Studio 2012 compiler: