Precision Helper:最佳免费 CHM 制作软件作者: amnesiac 日期: 2012-08-24 分类: windows 标签: 许多用户都有制作 CHM 文档的经历,或许是为了与他人分享资料,或许是为自己开发软件提供帮助。尽管网上搜索CHM制作软件结果繁多,但真正好用的并不多,能称为优秀的只剩下几款。其中我觉得优秀又免费的只有 Precision Helper,称得上最佳免费 CHM 制作软件。 为什么说它优秀呢? 1、新用户能快速上手,使用方便:Precision Helper 的 Ribbon 界面, 直观可视化, 主要的功能都能在这里找到,总体设计较为人性化。
一、简单介绍下面简要介绍 Precision Helper: 由于官方直接提供了绿色版,并且使用安装版的安装过程也很简单,所以这里不介绍安装的过程。需要注意如果当前系统上没有安装 Microsoft HTML Help Workshop(注2),那么在安装过程中会提示下载安装,如果是绿色版则必须手动安装才能生成 CHM 文件,这里提供它的下载地址(大小 3.3 MB):Microsoft HTML Help Workshop 下载(尽管实际上 Precision Helper 只需要其中的一个文件,不过微软建议完整安装。) 注1: 这里说的使用专有项目文件格式是指在制作时的项目格式,实际上它们都支持导入 hhp 文件来创建项目,但如果要获取修改后的 hhp 文件则不太容易。
完整的详细功能请参阅帮助中 [主要功能-完整功能列表] 部分。 二、从源文件创建项目在打开程序后,将显示欢迎页,如下图(关于其中各部分的功能说明,请参阅帮助): 此时,点击新建项目,然后选择新项目的保存位置并输入项目文件名,确定后将出现下图: 其中,左边为导航栏(可调整位置),中间的当前主题为项目属性,现在我们先点击左下角包含的文件,在出现的选项卡中添加源文件(根据图示进行操作): 为了方便,我这里已经把源文件复制到了当前项目的目录下(如果没有则这里选择目标文件夹),所以直接添加项目文件,选中所有文件并确定后这些文件将出现在包含的文件选项卡下方: 现在依次点击 Ribbon 栏工具下面的自动添加主题和自动添加关键字(这里的主题是指 CHM 文件左边目录中的目录项,关键字则是到主题文件的索引),根据提示进行操作到添加完成。然后点击左边导航栏中的目录和关键字索引后可以看到上方出现了刚才添加的主题和关键字: 这样就自动生成了目录和索引,此时目录中的文字和索引中的关键字都直接提取自网页文件中的标题。如果含有较多网页,建议对目录项进行分类和顺序调整,让导航更方便一些。 在“已编译帮助文件”中输入目标 CHM 的路径和名称或者可以通过紧邻的“…”按钮进行选择(如果没有指定路径,则生成时与项目文件在相同路径); 现在我们来设置标题,点击右侧的对象检视器,“当前项目”右边的输入框中会显示为“无标题”,直接输入标题接着回车(注意如果没有回车则不会保存): 设置 CHM 文件的基本操作到这里就完成了,此时可以转到 Ribbon 栏发布下的运行来进行编译并查看结果。 三、反编译 CHM 文件创建项目几乎每个同类软件都能反编译 CHM 文件,这个软件在反编译 CHM 软件时,除了解压其中的网页文件/目录文件/索引文件等,它还会自动生成项目文件。现在从 Ribbon 栏工具下选择CHM 导入(注:不是“CHM 查看器”),接着选择要反编译的 CHM 文件和新建项目的目录(建议使用空目录,否则新建项目的项目文件 hhp 会包含多余文件),然后将出现下面的属性窗口: 此时可以对 CHM 文件的外观和行为进行进一步设置,方法与前面新建时相同。 四、插件的安装及编写尽管 Precision Helper 已经包含了大量与制作 CHM 相关的功能,然而用户的需求是各种各样的,总有一些目前尚未满足的需求,Precision Helper 为此提供了扩展接口。您可以首先看看程序中自带的一些插件(例如 HTML Tidy),或者到官方网站看看程序中没有自带的插件(查看在线插件)。 1、安装插件下载插件文件后,把它解压到 Extras 目录。对于绿色版这个目录在 Precision Helper 目录下,对于安装版,这个目录为 C:\Documents and Settings\%UserName%\AppData\Precision\precisionhelper\Extras(Windows 2000/XP)或 C:\Users\%UserName%\AppData\Roaming\Precision\precisionhelper\Extras(Windows Vista 或更高版本)。 2、编写插件如果前面没有找到自己需要的功能,可以考虑自己编写插件。根据自己需要的功能和所选择的工具,编写插件可以很简单,也可能较复杂。 [Precision Helper Extension] ; cmdline 表示使用命令行接口 Interface=cmdline ; 在 Precision Helper 中显示的插件标题和提示信息。 Caption=Encoding Conversion Hint=Convert the encoding of htm/html files in current project. Caption.cn=编码转换 Hint.cn=转换项目中所有网页文件的编码为用户指定的编码。 [Application] ; 要执行的程序,其中 %APPEXTRAS% 表示 Precision Helper 的扩展文件夹。可以在帮助中查看到更多这里能使用的变量。 %APPEXTRAS%\Encodingconversion\Encodingconversion.exe [Command-line] ; 传递给程序的参数,%PROJECTFOLDER% 表示项目文件夹。这样我们可以对里面的所有网页文件进行操作。 Parameters="%PROJECTFOLDER%" waitfor=0 saveTOC=1 saveIDX=0 saveProject=1 reloadTOC=1 reloadIDX=0 reloadProject=1 [IDE] ; 设置这个扩展在 Precision Helper GUI 哪些部分的工具栏显示出来。 ribbonHOME=1 ribbonTOC=1 ribbonIDX=0 ribbonPUB=0 ribbonTOOLS=1 ribbonHELP=0 TopicSource=0 接着把这个插件配置文件和要调用的程序放在插件目录的 Encodingconversion 子目录中,包括 Encodingconversion.phe、Encodingconversion.exe 以及要调用程序需要的其他文件(这里为了方便,都放在同一个目录中)。其中 Encodingconversion.exe 是由 ahk 脚本编译而成,如果使用安装版的 AutoHotkey,那么这里直接使用 ahk 脚本而不进行编译。
五、最终帮助的发布格式在本文中主要讲输出 CHM 格式,这是 Precision Helper 的主要输出格式,不过它还支持输出为其他文件格式,下面简要介绍它支持的几种主要格式: 1. CHM:早期 Windows 系统中的文件格式是 WinHelp(扩展名 .hlp 和 .cnt),从 Windows Vista 起对 WinHelp 格式的支持已经停止了。从 Windows 98 开始引进了 HTML Help(扩展名 .chm)。HTML Help 在单文件中集成了目录和帮助,同时支持索引、全文搜索和基于 html 的丰富的格式表现,所以目前成为了 Windows 平台上在程序中使用的最常见的联机帮助格式。在 Windows 平台中分享一些无需编辑和打印的资料时,推荐使用这种格式。 2. WebHelp:这种格式是把项目的目录结构(源文件)复制到特定文件夹并生成 HTML 或 XML 格式的“框架”,这样可以方便地在网页浏览器中进行浏览。许多程序的在线帮助使用类似的方法实现,具体的效果请参阅:Precision Helper 在线帮助(英文)。自带的样式已经不错了,不过如果您会网页或懂得处理图片,那么通过修改模板可以完全按自己的需求进行自定义。 3. ePUB:这是广泛使用的电子书格式,方便在不同的设备上查看。具体效果请参阅:Precision 4. 单个 HTML 文档:实际上是合并所有主题到一个文件并复制项目的其他内容(图像、样式等)到一个特定文件夹(含目录结构)。这种格式一般作为中间格式方便进一步的操作,例如进行打印或转换为 PDF 格式(此时另需安装 PDF 打印机或转换工具,具体请参阅帮助)。 六、关于 CHM 的常见问题及技巧这里简要说说与 CHM 格式相关的一些问题和技巧,采用问答形式。 1. 问:我从网上下载了一个 CHM 文件,打开查看页面时,却提示“无法显示网页…”,每个页面都是这样,什么原因呢? 2. 问:我想发布一些 CHM 格式的资料到网上,但我希望用户下载后可以直接查看,而不需要麻烦的去解锁,有什么办法吗? 答:一个非常简单的办法是对 CHM 文件进行压缩(例如压缩为 ZIP 文件)这样其他用户下载解压后可直接查看。目前,AutoHotkey 中文帮助离线文件的发布采用这种形式,这样方便传输,也方便用户。 3. 问:我在从 HTM/HTML 文件创建 CHM 文件时,产生的 CHM 文件中某些页面为空白,并且无法搜索中文,该如何解决? 4. 问:我需要经常/批量的反编译 CHM 文件,每次都要打开一个软件进行解压很麻烦,能方便些吗? hh.exe -decompile <dir> <object.chm> 其中 hh.exe 是系统自带的 CHM 查看器,<dir> 是目标目录,<object.chm> 是要解压的 CHM 文件。需要批量解压则在循环中使用这个命令。此外,许多压缩解压软件也能解压 CHM 文件或查看其内部文件。使用 TotalCommander 的用户可以为内部命令 cm_GoToDir 设置一个热键来直接进入 CHM 文件查看里面的内容。 5. 问:我需要经常/批量的从已准备好的项目文件编译成 CHM 文件,能实现吗? 答:首先请下载 Microsoft HTML Help Workshop(请下载中间 3.3 M的文件),并从中提取 hhc.exe 和 hha.dll 文件,现在可以使用下列批处理命令: hhc.exe <myproject.hhp> myproject.hhp 为要编译的项目文件,执行前请确保 hhc.exe 和 hha.dll 文件存在。如果成功,生成的 CHM 文件将会出现在 myproject.hhp 文件的OPTIONS段下Compiled file 对应的值指定的文件路径。 6. 问:我想在查看 CHM 时做一些标记,能实现吗? 七、小结本文简要介绍了 Precision Helper 创建新项目的基本功能,更多的功能和用法等请参阅帮助。如果希望试验它的一些功能,建议使用程序包中自带的 Precision Helper 的帮助的项目文件(在 samples 文件夹中)进行测试。 八、其他补充1、我制作 CHM 的一些经历我最初生成 CHM 是使用了 TotalCommander 中的插件 CHMDir(善用佳软注:我发布的TC学堂的chm电子书,也是用该插件完成的),但这个插件功能较弱,无法进行更多的设置和包含全文搜索功能(这是最初我更新的 AutoHotkey 中文帮助不含搜索的原因,很多 AutoHotkey 中文用户知道)。之后开始了一路寻找这类软件的过程,在选择这个软件一段时间后寻找结束。目前 AutoHotkey 帮助在更新时的解压及生成已经使用前面所述的方法脚本化,所以一般只在创建新帮助时才使用 Precision Helper。 2、关于 Precision Helper 的中文翻译目前的中文界面和帮助是我翻译的,由于英语水平及能力的限制,在准确性和表达的通顺上存在问题。如果有哪位朋友对 CHM 的各方面功能比较熟悉,有空且愿意帮忙进行完善(以及翻译官方网站上与 Precision Helper 相关的网页),则可以尝试和他们协商赠送您一款他们商业软件的授权(这是他们对译者的感谢,由于我只需要他们的这个软件,所以当时放弃)。在翻译时我使用 OmegaT,这是种能快速上手的翻译记忆软件,同时把翻译记忆提供给了他们,所以在进行完善时主要进行校对,而不需要输入现在的翻译(欲简单了解 OmegaT 请参阅维基百科上 OmegaT 的介绍和 OmegaT — 開放源碼電腦翻譯輔助程式)。 3、关于捐赠Precision Helper 是免费软件,如果您觉得它给您的很大的帮助,可以考虑捐赠以支持它们进一步的开发(捐赠地址)。 文章更新历史: |
|
来自: 看见就非常 > 《portable Soft》