NDoc 用户指南   [回目录] NDoc 1.3

MSDN 文档引擎

[此文档为预发布版本,在未来版本中有可能改变。]

概述

MSDN 文档引擎用于生成如 .NET Framework SDK 类库文档样式的代码文档,并编译为 HTML Help 1 格式的单一文件(*.CHM)。

MSDN 2003 文档引擎是 NDoc 1.3 对 MSDN 文档引擎的改进,加入了语言选择器等功能,更加接近 .NET Framework SDK 文档的样式。

配置

所有文档引擎都具有一些 通用的配置项

配置项 说明
AdditionalContentResourceDirectory 页面中涉及到的资源文件(如图片等)所在的目录。此目录及其子目录中的所有文件,将以原有的目录结构包含进 HTML Help 项目中,使用相对路径的超链接不需要做大的调整。

注意: 此文件夹中第一层次的文件,和 NDoc 生成的 HTML 文件、以及通过 FilesToInclude 包含进来的文件,将处在同一层次上,请依次类推其他文件的相对 URL。

BinaryTOC 是否以二进制方式创建目录树文件。这将显著提高大尺寸 CHM 文件的打开速度。
ExtensibilityStylesheet 用户自定义的 NDoc 扩展 XSLT 转换文件,用于转换用户自定义的特殊标记。请参见 NDoc 可扩展性
FilesToInclude 指定需要包含在 HTML Help 项目中的附加文件。(1)允许使用绝对路径或相对路径指定,相对路径相对于 NDoc 项目文件所在目录。(2)可以使用通配符 * 和 ?,如 D:\preparedDocs\*.html。(3)可以有多个地址,用符号 "|" 隔开。
FooterHtml 自定义的 HTML 页脚。您可以直接使用 HTML 代码,其中: "%FILE_NAME%" 将被自动替换为页面的文件名,"%TOPIC_TITLE%" 被替换为该页面的标题文字,"%ASSEMBLY_NAME%" 和 "%ASSEMBLY_VERSION%" 分别被替换为当前页面对应类型所属程序集的名称和版本信息。
HeaderHtml 自定义的 HTML 页头。您可以直接使用 HTML 代码,其中: "%FILE_NAME%" 将被自动替换为页面的文件名,"%TOPIC_TITLE%" 则被替换为该页面的标题文字。
HtmlHelpName 一个名称,用于命名生成的 HTML Help 项目以及将要生成的 CHM 文件。
IncludeFavorites 是否在生成的 HTML Help 文件中包含“收藏”选项卡。
LangID HTML Help 文件的 LangID 设置。中文版默认为 2052。
OutputDirectory 输出文件目录,生成的 .html 和 .chm 文件都将存放于此目录。
OutputTarget 输出目标格式: HTML Help (.chm) 或 Web 网页或两者都输出。
RootPageContainsNamespaces 如果为真,RootPageFileName 指定的主页面,将在目录树中表示为所有命名空间结点的容器(父结点)。否则,将和其他命名空间结点并列表示。
RootPageFileName 通过此项指定 HTML Help 文件中的主页面文件名。注:此处主页指打开 CHM 文件时显示的第一个页面,请通过 RootPageTOCName 指定此主页面在目录树中的显示名称;通过 RootPageContainsNamespaces 指定此主页面在目录树中的显示样式;可以通过 FilesToInclude 将此文件引入到此 HTML Help 项目中来。
RootPageTOCName HTML Help 文件中,主页在目录树中的显示名称。若 RootPageFileName 指定了某一页面,而此项没有指定,则将在目录树中显示“概述”作为名称。注:此处主页指打开 CHM 文件时显示的第一个页面。
SdkLinksOnWeb 如果为真,类库中所有指向 .NET Framework 标准类库的文档超链接都将指向 MSDN 的在线版本。否则,将指向本地版本。
ShowVisualBasic 是否为类型和成员显示 Visual Basic 语法块。
Title 此文本将显示在每个页面的左上角,一般填写类库的名称比较合适。

将附加的文件加入要编译的 CHM 文件中

MSDN 文档引擎提供了 FilesToIncludeAdditionalContentResourceDirectory 两种途径,允许您附加额外的文件。

前者允许您使用 * 或 ? 通配符的形式指定要包含的文件路径,可以指定多个路径,用“|”隔开。如果使用相对路径,应相对于 NDoc 项目文件所在的目录。注意:在最终编译的 CHM 中,这些被附加的文件,和其他由 NDoc 生成的 HTML 文件,处在同一级目录中。

后者将一个文件夹中的内容(包括子文件夹中的全部内容)全部读入。注意:在最终编译的 CHM 中,AdditionalContentResourceDirectory 文件夹第一级的文件和文件夹,和其他由 NDoc 生成的 HTML 文件,处在同一级目录中;该目录的子目录及其中内容,将保持原有父子关系。例如 AdditionalContentResourceDirectory 是 D:\temp ,这个目录中有 my.css 文件和 images 子目录,images 目录中有 logo.gif 文件,则 my.css 和其他 NDoc 生成的文件同级,使用相对路径引用 my.css 时为“my.css”;而引用 logo.gif 应为“images/logo.gif”。

请根据您的具体情况进行选择具体采用哪种方式。

另外,RootPageFileName 指定 CHM 打开时的第一个页面文件,这个页面可以是 NDoc 生成的文件,也可以是通过上述两种方式附加进去的某 HTML 文件。