exponenta event banner

Создать связи

К отчету можно добавить следующие виды ссылок:

  • Внутренний - ссылка на расположения в отчете. Использовать mlreportgen.dom.InternalLink объект.

  • Внешний (External) - ссылка на расположение вне отчета, например HTML-страницу или PDF-файл. Использовать mlreportgen.dom.ExternalLink объект.

Создание внутренней связи

Чтобы связать одно расположение в документе с другим расположением в том же документе, выполните следующие действия.

  1. Определение целевого объекта связи путем добавления mlreportgen.dom.LinkTarget объект к документу или элементу документа. Чтобы убедиться, что целевое имя ссылки используется для создания LinkTarget действителен для всех типов отчетов, создайте целевое имя связи с помощью mlreportgen.utils.normalizeLinkID.

  2. Определение связи путем добавления mlreportgen.dom.InternalLink объект к документу или элементу документа. При создании InternalLink объект, для targetName используйте целевое имя ссылки из LinkTarget объект.

Например, можно включить About the Author ссылка на заголовок с заголовком Author's Biography.

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');

Добавление текста или изображений в ссылки

Добавление текста или изображения к ExternalLink или InternalLink объект, используйте append метод с этим объектом. Добавить a Text, Image, или CustomElement объект.

Создание ссылки на страницу

Можно создать цифровую ссылку на страницу, на которой находится цель ссылки. Например, можно создать ссылку на страницу в форме «См. страницу 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.

См. также

| | | |

Связанные примеры

Подробнее