文档

创建一个目录

您可以在报表程序中创建目录,也可以使用模板定义TOC。要以编程方式创建TOC,请添加mlreportgen.dom.TOC对象添加到您的报表文档。

使用模板可确保使用该模板的所有报表程序创建相同类型的TOC。另外,使用模板时,如果格式发生更改,则只能在一个地方更新TOC。

如果你正在使用模板,你可以:

  • 在Word模板或HTML或PDF模板包中包含TOC引用(root.html).

  • 为TOC创建文档部件模板,并以编程方式插入文档部件。

使用任何一种方法,报表程序都必须创建指定数字级别的标题对象或指定大纲级别的段落对象。TOC生成器使用带有级别信息的内容来定义结构。

在报告程序中创建TOC

DOM API支持自动生万博1manbetx成文档的目录。启用自动生成TOC:

  • 使用或标题对象(标题Heading1,等等),以指定章节标题。如果你使用对象作为标题时,必须设置段落的OutlineLevel属性设置为适当的值,例如,章节或其他顶级标题设置为1。

  • 在您想要生成TOC的文档中插入TOC占位符。您可以通过编程方式或在文档的模板中插入TOC占位符。

以编程方式创建TOC

若要以编程方式创建TOC占位符,请添加mlreportgen.dom.TOC对象,您想在其中生成TOC。您可以指定TOC中包含的级别数和领导者的类型。默认值是3个级别和一个点前导。这个例子使用了两个级别和一个点前导。

进口mlreportgen.dom。*;d =文件(“mydoc”“pdf”);开放(d);title = append(d,段落)“我的TOC文件”));标题。粗体=真;标题。字形大小=“28 pt”;toc = append(d, toc (2));toc。Style = {PageBreakBefore(true)};h1 = append(d,Heading1(“第一章”));h1。Style = {PageBreakBefore(true)};p1 = append(d,段落)“Hello World”));h2 = append(d,Heading2(“1.1节”));h2。Style = {PageBreakBefore(true)};p2 = append(d,段落(另一个页面的));h3 = append(d,Heading3(“我的分段1.1.a”));p3 = append(d,段落(“我的三级标题文本”));关闭(d);rptview (d.OutputPath);

使用模板创建Microsoft Word TOC

可以使用Word在Word文档或文档部分模板中插入Word TOC引用对象。Word在更新文档时将TOC引用替换为自动生成的TOC。

使用包含TOC引用的模板在DOM Word报告中生成一个目录:

  1. 要指定在报告中生成TOC的位置,请在Word模板中创建一个内容引用表。看到创建一个Word目录参考

  2. 设置要出现在目录中的节头的大纲级别。看到设置科长的大纲级别

  3. 更新生成的文档。看到更新Word报表中的TOC

创建一个Word目录参考

  1. 在Word中打开模板。

  2. 单击要创建目录的位置。

  3. 参考文献选项卡上,单击目录

  4. 选择TOC格式选项以生成目录。例如,选择内置的格式选项。出现TOC。

  5. 保存模板。

更新Word报表中的TOC

必须更新包含TOC引用的Word文档才能生成TOC。在Windows上®系统,DOM APIrptview命令使用Word更新它所显示的Word文档。如果直接打开Word文档,例如在非Windows系统上通过DOM API生成的文档,则必须更新TOC。

  1. 在Word模板中,选择TOC引用。

  2. 参考文献选项卡上,单击更新表

  3. 在“更新目录”对话框中,选择更新整个表并点击好吧

在HTML或PDF模板中创建目录

使用PDF或HTML模板添加TOC时,您可以:

  • 在主模板中包含一个内容占位符表(root.html)。

  • 在文档部件模板中包含TOC占位符。

使用文档部分模板在HTML或PDF报告中创建目录:

  • 定义包含TOC占位符的文档部件模板。

  • 以编程方式将文档部分插入到报表中。

  • 使用或标题对象(标题Heading1,等等)来指定报告的标题。如果你使用对象作为标题时,必须设置其OutlineLevel属性设置为适当的值。

为TOC定义文档部件模板

要为TOC创建或修改文档部件模板,请使用以下形式的代码:

   .

您可以:

  • 取代ReportTOC用你喜欢的名字

  • 层数到要包含在TOC中的标题的级别数

  • leader-pattern空间

有关示例,请参见PDF和HTML文档部分和漏洞

使用文档部件以编程方式插入TOC占位符

使用DocumentPart类来插入包含TOC占位符的文档部分的实例。如果在模板中定义了文档部分模板,则在定义文档对象时包含模板包名称。例如:

d =文件(“MyReport”“html”“MyTemplate”);

这段代码使用了提供的文档部分ReportTOC在默认模板中生成一个目录。

进口mlreportgen.dom。*;d =文件(“MyReport”“pdf”);追加(d,“我的报告”);追加(d, DocumentPart (d,“ReportTOC”));追加(d, Heading1 (“第一章”));追加(d, Heading2 (“第一节”));关闭(d);rptview (d.OutputPath);

    提示属性的变量文档对象中的DocumentPart使用与文档对象关联的文档部分模板的语法:

    追加(d, DocumentPart (d,“ReportTOC”));

    如果使用此语法,则在引用文档部分时不需要调用模板并指定文档类型。这种方法简化了代码并更有效地生成报告。

设置科长的大纲级别

要在报告中生成目录,程序必须设置内容中所需的节头的大纲级别。大纲级别是一个段落格式属性,用于指定段落的内容是否以及在什么级别出现在目录中。例如,如果一个段落的大纲级别为1,则该内容将显示在生成的目录的顶层。您最多可以指定9个大纲级别。

要设置段落的大纲级别,可以使用以下方法中的一种。

使用模板定义的样式来设置大纲级别

您可以使用报表模板中定义的样式来设置段落的大纲级别。默认情况下,Word文档包含一组样式,标题1标题2等等,它们定义了大纲级别。您的程序可以使用这些内置样式来指定这些头显示在TOC中。本示例使用模板定义的样式来设置节头的轮廓级别,并假设模板MyTemplate包括TOC引用。

进口mlreportgen.dom。*;d =文件(“MyReport”“多克斯”“MyTemplate”);追加(d,段(“第一章”“标题1”));追加(d,段(“第一节”“标题2”));关闭(d);rptview (d.OutputPath);%更新TOC

您还可以使用Word或HTML编辑器定义自己的标题样式,然后使用它们生成报告。

使用格式对象设置大纲级别

您可以使用格式对象来设置大纲级别。本例假设模板MyTemplate包括TOC引用。

进口mlreportgen.dom。*;d =文件(“MyReport”“多克斯”“MyTemplate”);h1 = {FontFamily(“天线”)、字形大小(“16 pt”), OutlineLevel (1)};h2 = {FontFamily(“天线”)、字形大小(“14 pt”), OutlineLevel (2)};p = append(d,段落)“第一章”));p.Style = h1;p = append(d,段落)“第一节”));p.Style = h2;关闭(d);rptview (d.OutputPath);%更新TOC

使用标题对象设置大纲级别

你可以使用mlreportgen.dom.Heading1对象(和Heading2Heading3,等等)来指定大纲级别。一个Heading1对象是其构造函数指定其大纲级别的段落。你可以使用Heading1对象单独使用或与基于模板的样式或基于格式对象的样式一起使用。本例假设模板MyTemplate包括TOC引用。

进口mlreportgen.dom。*;d =文件(“MyReport”“多克斯”“MyTemplate”);h1 = {FontFamily(“天线”)、字形大小(“16 pt”)};h2 = {FontFamily(“天线”)、字形大小(“14 pt”)};h = append(d,Heading1(“第一章”));h.Style = h1;h = append(d,Heading2(“第一节”));p.Style = h2;关闭(d);rptview (d.OutputPath);%更新TOC

在HTML和PDF报告中Heading1而且Heading2对象生成HTML元素h1而且h2.通过使用对象Heading1Heading2,等等,您可以确保您的报告使用默认的标题样式。

另请参阅

功能

相关的例子

这个话题有用吗?