在入門篇中我們瞭解到如何使用C#調用hhc.exe來產生CHM檔案,而在中篇中,我們進行了CHM反編譯和將CHM檔案轉化為Word。在下篇中,我將簡單介紹下這些技術在如何應用在實際項目中。
CHM電子書的優點:
1、CHM最好的地方就是對網頁、圖片的支援--實際上該格式類似於一個簡版的IE瀏覽器,有目錄、索引。
2、CHM的全文檢索索引最為方便的是結果的高亮顯示。
同時,CHM格式的電子書同樣有一些缺點:首先系統必須是windows系統,而且必須是98以上的系統並裝有ie3以上的瀏覽器,不能加批註。
我們可以看到一般軟體的協助文檔一般都是CHM格式的,這也是CHM電子書流行的原因之一。
下面來簡略講講如何在實際中應用前兩篇提到的技術。
1.我們可以製作一個自己的CHM編輯器,當然編譯器仍然是hhc.exe,我們只是做了下封裝
2.可以定義自己的CHM模板製作出漂亮的CHM電子書,前提是模板是HTML格式的
3.可以結合BHO編程,將自己喜歡的網頁內容直接儲存為CHM電子書格式,或者先儲存在本地,然後統一編譯為CHM電子書
4.將現有的CHM電子書反編譯為html格式的檔案,並可以將CHM轉換為word格式。
以上思路僅供參考,如果大家有好的想法,可以留言給我。
下面就第一點進行實現。
緣由
我發現一些編輯器不能插入格式化的代碼,即插入的代碼不能很好的顯示器格式,沒有文法著亮功能,於是一直想做一個這樣的編輯器,一開始想做成web的,因為html編輯器有很多是支援代碼插入功能,比如部落格園的隨筆編輯器,csdn發博得編輯器都支援代碼插入功能。但是因為web的可移植性不好,要麼需要裝資料庫,或者需要iis支援,於是就想做成cs的。
先來看看預覽效果吧,
這個是主介面,可以輸入關鍵字進行查詢,可以模糊查詢(使用Lucene.Net儲存關鍵字的索引實現)
這個是編輯頁面,裡面的是WebBrowser,點擊submit,將編輯器裡面的內容儲存為html頁面,並將關鍵字中的文本儲存為索引以供後面查詢用
CHM編譯時間的介面,下方是編譯時間輸出資訊
這個是編譯後的CHM檔案,支援文法加亮
想法:
這個編輯器可以做為程式員的程式碼程式庫編輯器,將自己常用到的代碼分門別類的儲存,必要時也可以產生CHM方便傳閱,可以根據關鍵字或者標題查詢(暫未實現)
下面提供beta版的程式下載,很多功能還沒現在,大家見諒
程式碼程式庫編輯器下載(簡陋版)
PS:本來想早點把應用篇寫好的,由於十一過來後電腦壞了,修好後就急急忙忙就弄了簡陋版本的程式,搜尋介面功能還沒開始做,先放在那邊,嘿嘿....
1.系統語言加亮暫時只實現C#代碼的,其他的後面再加
2.編譯為CHM的是工具列最後一個表徵圖,其他表徵圖都不能用....
3.運行此程式需安裝.net framework2.0以上版本,且hhc.exe和hha.dll存在於C:\Program Files\HTML Help Workshop目錄下
4.如果大家有興趣的話,我可以將我如何?這個小軟體的步驟跟大家分享下 ,如果覺得要實現步驟的,請推薦吧,3Q