记得前面有人问chm的制作问题,偶今天恰巧找到一篇文章,贴出来吧,
希望对一些人有帮助。
/*******************************************************************/
chm文件DIY
-
chm文件DIY
从Windows 3.0到Windows 95,系统使用的帮助文件一直是.hlp格式,在安装
Wind
ows98以后,我们发现系统中增加了一种.chm格式的帮助文件,与hlp文件相比
chm
文件有很大的改变,功能更加强大,支持的媒体文件更多,使用起来也更便捷。
chm文件可用来制作软件说明书、产品介绍、学习教程、电子图书、报刊的电子版
本、个人资料的整理等等。本文将由浅入深地介绍chm文件的制作方法,希望对读
者能有所帮助。
-
一、chm文件及其制作工具HTML Help WorkShop简介
chm文件是微软1998年推出的基于html文件特性的帮助文件系统,以替代早先的
Wi
nHelp帮助系统,在Windows 98 中把chm类型文件称作"已编译的HTML帮助文件"
。被Internet Explorer支持的JavaScript、VBScript、ActiveX、Java Applet、
Flash、html图像文件(GIF、JPEG、PNG)、音频视频文件(AU、MIDI、WAV、
AVI
)等等,chm同样支持,并可以通过URL地址与因特网联系在一起。
是典型的chm文件运行界面,其窗口可分为3部分,上面是功能按钮区,罗列了几个
常用的浏览器按钮;右边是主窗口;左边是导航嵌窗。导航嵌窗用来快速定位感兴
趣的内容,这里可包含标题、索引、搜索和标签。按"隐藏∕显示"按钮可以把左
边的导航嵌窗关闭或打开,其他几个按钮浏览器中的也一样,"选项"中是一些常
用的控制命令。
在Windows 98及以后的Windows版本中,chm文件的运行程序(hh.exe,27K)已是
操作系统的一部分,它控制支持ActiveX组件的网页浏览器(如微软的Internet
E
xplorer 3.0以上版本)来解释并运行chm文件中的元素,这样的好处就是能跨平台
运行chm文件,只要有不同平台上的运行器和浏览器,chm文件就不再需要重新进行
编译而直接使用,在不同语言的操作系统下,chm文件也会自动显示对应语种的菜
单。
在PC机上使用chm文件要求使用者的操作系统装有IE3.0 或以上版本,如果使用者
仍在使用Windows 95 系统,就需要运行一个小程序(被称作chm文件阅读升级包)
hhupd.exe(700K),以便在Windows 95 中也能正常使用chm文件。而在Windows
98以后的系统中可以直接使用chm文件。最新的Hhupd.exe的下载地址是:http:
//
msdn.microsoft.com/library/tools/htmlhelp/wkshp/hhupd.exe。
制作chm文件的最佳工具是微软的HTML Help WorkShop,其最新版本号为1.31。虽
然是英文版,但它的几个单词都比较简单,稍有一些英文基础的人基本上都能应付
,如果不懂英文也没关系,当你对照程序看完此文后,也许你对HTML Help
WorkS
hop已能运用自如了,或者借助"东方快车"、"金山快译"等软件把英文菜单转
为汉字。
HTML Help WorkShop 的操作界面如图(2)所示。上面是菜单栏,菜单下面的工具
栏一般有5个按钮,分别是[New 新建]、[Open 打开]、[Compiled HTML
fil
e 编译过的HTML文件]、[View Compiled file 查看编译过的文件]、[
Displa
y online information 在线帮助]。
为叙述方便,下文中将把"HTML Help WorkShop"简称为"HHW"。
-
二、制作前的准备
1.下载并安装HTML Help WorkShop
你可以在微软的站点上下载HHW软件,也可以直接通过地址 http://msdn.
microso
ft.com/library/tools/htmlhelp/wkshp/htmlhelp.exe下载。下载后直接运行
htm
lhelp.exe,一路"next"就可安装成功。
HHW内含一个图形编辑处理程序(HTML Help Image Editor),图形文件的处理也
可以由它简单处理。
2.几个概念
相对来讲制作chm文件比较简单,大量的工作实际上是在前期制作html文件上,你
在chm文件中所看到和听到的,与你在浏览器中的结果是一样的。你可以专门为制
作chm文件而编制HTML,也可以直接利用现成的个人主页快速做成chm文件以便向外
发放,所不同的是,在个人网站上每个HTML文件之间必须由超级链接相连,而用来
制作chm文件的HTML文件组里,允许有独立的HTML文件,用户可以通过导航嵌窗来
实现对其访问。
现在让我们先了解一下几个用到的概念:
(1)项目文件[Project--.hhp文件]:包含创建chm文件所需的HTML文件信息
、目录表文件信息、索引文件信息、窗口属性、搜索、书签定义等内容。一个
chm
文件对应着一个项目文件。
(2)目录表文件[Contents--.hhc文件]:包含目录表中每个标题与HTML文件
的关联关系。目录表就好像是一本书的目录页。该文件不是必须的,如果创建的
c
hm文件没有导航嵌窗,就可以不创建.hhc文件,这样一来HTML中的跳转就要全部借
助其内部的超级链接了。
(3)索引文件[Index--.hhk文件]:一些专业书籍在其后面一般有个索引表,
利用已经排序的字母、单词或词组来帮助读者快速定位到需要的一个或几个位置。
在chm中也可以使用索引。索引文件中就包含每个关键词(keyword)与HTML文件的
对应关系。与目录文件中的标题不同的是,一个关键词可以对应多个HTML文件。索
引文件也不是必须的,如果你的chm文件的信息不是太复杂,不创建它也行。
(4)搜索:chm文件的搜索选项卡允许用户在所有chm文件中全文搜索字、词或短
语,将它们的标题显示出来,并把搜索出的词组高亮显示。如果使用搜索功能,
c
hm文件会稍大一点。
(5)书签:在我们阅读图书时,有时会在一些地方放个书签,便于以后能快速找
到该页,在chm中也同样有此功能。你可以把一些标题放到书签列表中,下次你可
以通过书签快速找到对应标题。
(6)窗口属性:是指chm文件的运行窗口。你可以自由定义窗口初始位置、大小、
按钮、导航嵌窗、显示模式等。
目录、索引、搜索和书签是chm文件的导航嵌窗中的4个导航选项,任何一个都可以
随意打开或关闭,当4个功能全部关闭时,导航嵌窗将自动消失。
因为HHW对chm的控制非常灵活,所以你可以制作出功能强大的chm文件,也可以制
作出非常简单的chm文件。另外在制作中我们需要指明的是基本的HTML文件,而图
形、视频、声音等文件不需要指明位置,HHW会根据HTML文件中的链接找到它们。
-
三、制作简单的chm文件
我们把没有导航功能的chm文件称作"简单的chm文件",它没有左边的导航嵌窗,
网页之间的跳转全部依靠HTML文件内部的超级链接。
下面介绍制作简单的chm文件(无导航功能)的步骤,这些步骤的叙述将在"制作
较复杂chm文件"中省略或简化,所以不可不读。
-
1.制作没有功能按钮的chm文件
首先你最好把所有要用到的html文件及有关图形、声音、视频等文件复制到一个空
文件夹中(当然可以包含子文件夹),并在IE浏览器中检验通过,然后启动HHW。
在File菜单中选[New],弹出新建文件对话框。
HHW可以新建:项目[Project]、文本文件[Text]、HTML文件、目录表文件[
T
able of Contents]和索引文件[Index]。我们选"项目",弹出新建项目向导
,提示你可以把以前的WinHelp项目文件转换为HHW项目文件。我们直接按"下一步
"。
在这里指定欲创建的项目的位置和文件名,我们按[Browse],选择HTML文件所在
目录,并定义个项目文件名如test1(程序自动添加.hhp后缀),按"下一步"。
在出现的对话框中指定已经存在的文件。因为我们目前只有HTML文件而没有目录文
件(.hhc)和索引文件(.hhk),所以只在[HTML files]前面打上小勾。按"下
一步",进入添加HTML文件的窗口。按[Add]按钮,把有关的标题HTML文件全部
选中加入(可以一次全部选中加入)。按"完成"后,程序就会进入项目编辑界面
,也就是HHW的主界面(参考图2)。
首先我们给将来的chm文件的窗口标题条指定与chm内容相符的文字(如果不指定,
则软件默认为"帮助"):按[Project]项目选项中左边第3个按钮"新建/编辑
窗口显示风格",在弹出的窗口类型中随便输入一个名字如"12",按"OK"后就
会进入"窗口属性"定义对话框。在[General]选项卡中的[Title bar text]
中输入标题条文字"test1--最简单的chm文件"如图(3)。
因为我们不需要导航嵌窗及功能按钮部分,所以再确认一下在导航嵌窗[
Navigat
ion Pane]中不要选中[Windows with navigation pane, topic pane, and
but
ton bar],如图(4)。按确定退回HHW主界面。
现在按[Compiled HTML File]编译按钮或者通过在[File]菜单中选择[
Compi
le]进行编译,chm文件就会在指定位置创建完成。这时你可以运行一下新创建的
chm文件,不难发现,chm已经包含了所有用到的HTML文件、图形文件等,相当于是
把全部网页文件打包到chm文件中了。如图(5)就是最简单的chm文件显示效果。
很简单吧?
2.制作包含功能按钮的chm文件
与上面操作相同,所不同的是:在进行到"窗口属性定义"操作时,在[General
]中指定chm文件标题栏中的文字"test2--带功能按钮的chm文件",在[Butt
on]中指定欲在 chm 文件的按钮区中显示的按钮如图(6),在[Navigation
Pa
ne]导航嵌窗设置里选中显示导航嵌窗(与上面不一样),如图(7)。其他选项
卡中我们使用默认值(后面在介绍)。设置好后,按编译按钮,生成的chm文件如
图(8)所示。因为我们没有生成目录表文件和索引文件,所以在chm中导航窗口不
会显示出来。
上面制作的chm文件比较简单,但有时也很实用,对于比较简单的几个HTML文件也
已经足够了。如果HTML比较复杂,也可以使用分帧处理,同样会做出出很不错的
c
hm文件,就像我们进入一些有分帧页面的网站时的操作方式一样。如图(9)。
-
四、制作较复杂的chm文件
在Windows 98中我们常见的chm文件多数具有目录及索引,有的还有搜索和书签,
这在使用chm文件的过程中会比较方便。下面我们就来制作带目录、索引、搜索、
书签的chm文件。在这里我还将介绍一些常用的选项功能的解释。
此类chm文件一般包含有多个HTML文件。与前面一样,你需要先把网页文件做好,
放到硬盘一个文件夹中,如 test3。进入HHW后选新建项目,并指定新建项目文件
的位置和文件名(如test3),在已经存在的文件中选中目录中所有用到的HTML文
件后,进入HHW主界面。
-
1.目录表文件的创建
按[Contents]选项卡,选择[Create a new contents file]创建新的目录表文
件,并命名它为 contents.hhc。然后进入目录表编辑窗口,如图(10)。在目录
编辑窗口左侧,从上到下排列有11个按钮,前5个分别是:目录表属性设置、插入
标题、插入页面、编辑所选标题或页面属性、删除标题或页面,下面4个箭头用来
调整所选标题或页面的位置及从属关系,最后两个分别是显示HTML文件源码和保存
文件。
插入一个标题:按[Insert a heading]按钮,弹出[Table of Contents
Entry
]对话框,如图(11),在[Entry title]中输入标题内容,如"简介"。按[
Add],在弹出的[Path or URL]对话框中选择Title为"简介"对应的 HTML 文
件,如图(12),按返回后一个标题就添加完成了。这里你也可以按图(12)下面
的[Browse...]指定前面没有选择加入的HTML文件,或者直接在[File or URL:
]中输入。
在标题"简介"下面再添加一个标题如"准备":按[Insert a Heading]按钮,
会弹出一个询问是否在所选标题上面插入标题的对话框,我们按"否",在[Ent
ry title]输入页面标题"准备",并按[Add]指定对应的HTML文件,返回后就
又加了一个标题。
在标题"准备"下面插入一个页面(或者是子标题)如"下载":按[Insert a
page]按钮,在[Entry title]输入"下载",并按[Add]指定对应的HTML文件
,返回。
同样我们可以加入许多标题、子标题、页面,并可以利用那4个箭头按钮来调整标
题或页面的位置及从属关系。HHW可以支持9个级别深度。
修改标题及改变标题图标的方法:选中标题,按[Edit selection]按钮,可以对
其重新指定所关联的HTML文件。在[Advanced]中通过下面的[Image index]改
变标题的图标。如图(13)。
设置目录属性:按[Contents properties]按钮后我们可以改变目录表显示样式
等,使用默认设置就行。
所有标题创建完成后,按左下角的[Save File]按钮,一个目录表文件就创建完
成了。如图(14)。
2.索引文件的创建
与目录文件的创建非常类似,只是索引文件中需要指定关键词与HTML文件的关联关
系。不再赘述。请参考上述目录表文件的创建方法。
3.项目文件的设置
按[Project]选项卡,进入项目编辑窗口(即默认的HHW介面)。其左边排列有
7
个按钮,分别是:项目属性设置、增加或删除HTML文件、增加或改变窗口属性定义
、API信息、显示HTML源码、保存文件、保存文件并编译。
我们按[Change project options]按钮对项目进行设置:通常需要做的是,在[
General]选项卡的[Default file]中指定封面页。封面页就是当打开chm文件时
默认显示的HTML文件。封面页可以是目录表中的某个标题所对应的HTML文件,也可
以是在目录表中不存在的专门用来作封面的 HTML 文件。如图(15)。
如果想在chm文件中具备全文搜索功能,还需要在[Compiler]中选中[Compile
full-text Search Information],如图(16)。
其他内容一般可以不去理会。
4.窗口显示设置
按第3个按钮[Add/Modify windows defunitions]设置窗口属性:这里的设置将
决定chm文件的显示风格。在弹出的对话框中我们给窗口风格随便指定一个名字(
如12),按OK就进入了[Windows Types]对话框。常用的几个设置项为:
(1)General常规
[Title bar text]中输入欲在chm文件的标题栏里显示的文字,如"轻松制作ch
m文件"。参考图(3)。
(2)Buttons按钮
选择欲在chm中出现的按钮。参考图(6)。
(3)Position位置
[Save user defined windows position after first use]如果选中,则系统会
保存chm使用者最后一次退出 chm 文件时窗口的位置、大小等,下次再打开chm时
,系统会恢复这些属性。如果不选中,则每次都以你默认的窗口大小、位置打开
c
hm文件。
Left和Top是指定打开chm时窗口左上角的位置,Width和Height则指定窗口的宽和
高。参考图(17)。
(4)Files 文件
如果选择了显示Home、Jump按钮,就在这里输入对应的URL超链接地址,比如你的
个人主页地址。
(5)Navigation Pane 导航嵌窗
[Windows with navigation pane,topic pane,and button]如果不选,则chm窗
口没有导航嵌窗和按钮。
[Navigation pane width]中指定导航嵌窗的宽度。
[Open with navigation pane closed]如果选中,在打开chm文件时导航嵌窗默
认为关闭状态。
[Auto sync]如果选中,chm中的目录标题与HTML内容自动保持同步。
[Automatically show/hide navigation pane]如果选中,在chm为活动(当前)
窗口时,导航嵌窗显示,当不是活动窗口时,导航嵌窗自动隐藏。
[Default tab]中指定导航嵌窗中默认的显示项。可以是目录、索引、搜索、书
签。
[Search tab]如果选中,在chm中将具备全文搜索功能,而[Advanced]可以让
chm具有高级搜索的功能(使用and,or,not,near)。
[Favorites tab]如果选中,chm文件就会具有书签功能。如图(18)。
另外2个选项夹可以不管,使用默认设置就行。
5.编译成chm文件
经过上面的设置,现在我们可以进行编译了。按工具栏中的编译按钮或者直接按项
目窗口左下方的[Save all file and Compile]按钮,几秒钟以后chm文件就被编
译生成。然后用鼠标双击此chm文件就可以看到作品了,如果发现问题还可以返回
HHW里进行修改调整后再编译,或者在以后双击.hhp 文件进行修改。
-
五、反编译一个chm文件
有时我们需要把一个已经存在的chm文件反编译,以便把其中的全部内容取出。反
编译的方法是:先创建一个新的文件夹,然后进入HWW程序,在[File]菜单中选
[Decompile],指定目标文件夹的位置和欲反编译的chm文件,按OK,反编译很快
就会完成。这时在目标文件夹中就保存着chm中的所有文件和子文件夹,你可以慢
慢研究别人的技巧了,或者对其进行修改后再编译。其实HHW中还有许多功能和扩
展设置选项,因篇幅所限不再介绍,大家自己探索吧。
关键词:chm文件DIY -- zt sjtubbs