• 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

  • 相关阅读:
    linux系统日志及其rsyslog服务
    C++
    程序员之---C语言细节18(一些奇怪表达式)
    Spring MVC的简单使用方法
    Android系统开发(4)——Autotools
    大话设计模式C++版——代理模式
    JS获取地址栏并拼接參数
    二叉树的应用(1)--二叉树排序树基本操作
    【LeetCode-面试算法经典-Java实现】【067-Add Binary(二进制加法)】
    Android 实现形态各异的双向側滑菜单 自己定义控件来袭
  • 原文地址:https://www.cnblogs.com/cxd4321/p/2201697.html
Copyright © 2020-2023  润新知