C#生成CHM文件(应用篇)

在入门篇中我们了解到如何使用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

 

posted @ 2010-10-16 22:37  Alexis  阅读(6749)  评论(10编辑  收藏  举报