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

来源:Alexis的5!博客 责任编辑:栏目编辑 发表时间:2013-07-01 23:16 点击:

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

 

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • 用C#制作屏幕捕获程序
      • .NET程序员项目开发必知必会—Dev环境中的集成测试用例执行时上
      • 遍历ArrayList易犯错误
      • C#对XML操作:一个处理XML文件的类(1)
      • .NET简谈反射(动态调用)
      • 使用C#编写LED样式时钟控件
      • DataList嵌套问题 如何删除内层子DataList的记录
      • 怎样用C#实现完整文档打印功能
      • .NET简谈自定义事务资源管理器
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1