Main Content

本页采用了机器翻译。点击此处可查看最新英文版本。

创建链接

您可以向报告添加以下类型的链接:

创建内部链接

要从文档中的一个位置链接到同一文档中的另一个位置:

  1. 通过将 mlreportgen.dom.LinkTarget 对象追加到文档或文档元素来定义链接目标。为了确保用于创建 LinkTarget 对象的链接目标名称对所有报告类型都有效,请使用 mlreportgen.utils.normalizeLinkID 生成链接目标名称。

  2. 通过将 mlreportgen.dom.InternalLink 对象追加到文档或文档元素来定义链接。当您创建 InternalLink 对象时,对于 targetName 参量,使用来自 LinkTarget 对象的链接目标名称。

例如,您可以包含一个指向标题为 Author's Biography 的标题的 About the Author 链接。

import mlreportgen.dom.*
import mlreportgen.utils.*
d = Document('mydoc','pdf');

% Append a link target to a heading
h = Heading(1,'Author''s Biography');
h.Style = {PageBreakBefore(true)};
linkID = normalizeLinkID('bio');
append(h,LinkTarget(linkID));

% Link to the target
append(d,InternalLink(linkID,'About the Author'));

% Append the heading 
append(d,h);

close(d);
rptview(d);

创建外部链接

使用 mlreportgen.dom.ExternalLink 对象创建外部链接,指定链接目标和链接文本。

import mlreportgen.dom.*
d = Document('mydoc');

append(d,ExternalLink('https://www.mathworks.com/','MathWorks'));

close(d);
rptview('mydoc','html');

向链接添加文本或图像

要向 ExternalLinkInternalLink 对象添加文本或图像,请对该对象使用 append 方法。追加 TextImageCustomElement 对象。

创建页面引用

您可以创建指向链接目标所在页面的数字引用。例如,您可以创建“请参阅第 15 页”形式的页面引用,其中引用的目标是第 15 页上的对象。例如:

import mlreportgen.dom.*;
d = Document('mydoc','pdf');
open(d);

% Add target to heading object and append heading and 
% para text to document
h = Heading1(LinkTarget('mytarget'));
append(h,'Referenced Head');
p = Paragraph('Here is some paragraph text.');
append(d,h);
append(d,p);

% Add another page and insert the page reference 
% to the target
p1 = Paragraph('The following paragraph contains the page reference.');
p1.Style = {PageBreakBefore(true)};
p2 = Paragraph('See Page ');
p2.WhiteSpace = 'preserve';
ref = PageRef('mytarget');
append(p2,ref);
append(p2,'.');
append(d,p1);
append(d,p2);

close(d);
rptview(d.OutputPath);

在您的 PDF 模板中,您可以使用 <pageref> 元素来创建这种引用。您的 DOM API 程序必须设置元素使用的链接目标。<pageref> 使用一个参量:<pageref target="nameoftarget">

有关此机制的更多信息,请参阅 mlreportgen.dom.PageRef

另请参阅

| | | |

相关示例

详细信息