C#生成CHM文件(应用篇)
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
如果您喜欢我的文章,您可以通过支付宝对我进行捐助,您的支持是我最大的动力https://me.alipay.com/alexis
作者:Alexis
出处:http://www.cnblogs.com/alexis/
关于作者:专注于Windows Phone 7、Silverlight、Web前端(jQuery)。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过shuifengxuATgmail.com 联系我,非常感谢。