mlreportgen.dom.DocumentPart class

Пакет: mlreportgen.dom
Суперклассы:

Создайте объект детали документа

Описание

Определите деталь документа, повторяемую часть отчета. Деталь документа обычно имеет отверстия, которые вы заполняете во время генерации отчета. Можно добавить позицию к документу или к части документа того же типа выхода.

Конструкция

documentPartObj = DocumentPart() создает HTML деталь документа с помощью HTML шаблона по умолчанию.

documentPart = DocumentPart(type) создает часть документа заданного типа (для примера, Microsoft® Word) на основе шаблона по умолчанию для этой части.

documentPartObj = DocumentPart(type,templatePath) создает деталь документа на основе заданного шаблона.

documentPartObj = DocumentPart(type,templatePath,docPartTemplateName) создает деталь документа на основе заданного шаблона детали документа в заданном шаблоне.

documentPartObj = DocumentPart(templateSrc,docPartTemplateName) создает деталь документа на основе заданного шаблона детали документа, сохраненного в шаблоне, используемом указанным источником. Источником может быть документ или позиция документа.

Входные параметры

расширить все

Тип выхода, заданный в качестве одного из следующих значений:

  • 'html'- Выходные данные HTML

  • 'pdf'- PDF на основе шаблона

  • 'docx'- Вывод слова

  • 'html-file'- вывод HTML, с использованием одного файла, который содержит CSS, JavaScript®, и изображения для отчета

Если вы задаете шаблон используя templatePath аргумент, значение для type должен совпадать с типом шаблона.

Полный путь к файлу шаблона или папке этой детали, заданный как вектор символов. Если вы опускаете расширение файла, тип шаблона основан на типе документа, например .docx для Word.

Типы данных: char

Имя шаблона детали документа, заданное как вектор символов. Укажите, где хранится деталь с помощью templatePath или templateSrc аргумент.

Объект детали документа или документа, шаблон которого содержит шаблон для этой детали документа, заданный как mlreportgen.dom.Document объект для документа или mlreportgen.dom.DocumentPart объект для детали документа.

Выходные аргументы

расширить все

Деталь документа, возвращенная как mlreportgen.dom.DocumentPart объект.

Свойства

расширить все

Дочерние элементы этого элемента документа, заданные как массив объектов DOM. Это свойство доступно только для чтения.

Это свойство только для чтения является идентификатором отверстия текущего отверстия в этом документе.

Тип текущего отверстия шаблона, заданный как 'Inline' или 'Block'.

  • Встроенное отверстие предназначено для элементов документа, которые могут содержать элементы абзаца: Text, Image, LinkTarget, ExternalLink, InternalLink, CharEntity, AutoNumber.

  • Блочное отверстие может содержать Paragraph, Table, OrderedList, UnorderedList, DocumentPart, или Group.

Это свойство относится к документам Word и PDF. Для документов Word значение является DOCXPageLayout объект, задающий текущий макет страницы. Для PDF значение является PDFPageLayout Объект, задает ли документ в данный момент макет страницы. Для документов HTML значение всегда является [].

Идентификатор для этого элемента документа, заданный как вектор символов или строковый скаляр. DOM генерирует уникальный идентификатор сеанса при создании элемента документа. Вы можете задать свой собственный идентификатор.

Это свойство только для чтения содержит список открытого статуса этого элемента документа.

Родительский элемент этого элемента документа, заданный как объект DOM. Это свойство доступно только для чтения.

Тег для этого элемента документа, заданный как вектор символов или строковый скаляр.

DOM генерирует тег с уникальным сеансом как часть создания этого объекта. Сгенерированный тег имеет форму CLASS: ID, где CLASS является классом объекта, а ID является значением Id свойство объекта. Определение собственного значения тега может помочь вам определить, где произошла проблема во время генерации документа.

Имя шаблона этой детали, если шаблон хранится в библиотеке шаблона детали документа шаблона, заданного в TemplatePath этой детали свойство. Если это свойство является [], шаблон, заданный как TemplatePath свойство используется в качестве шаблона этой детали.

Путь к шаблону этой детали или шаблону, библиотека шаблонов которого содержит шаблон этой детали, заданный как вектор символов.

Выходной тип, заданный как одно из следующих значений.

  • 'HTML' - HTML, упакованный как zipped-файл, содержащий HTML, изображения, таблицу стилей и файлы JavaScript отчета.

  • 'HTML-FILE' - HTML отчет как один HTML файла, содержащий текст, таблицу стилей, JavaScript и закодированные в base64 изображения отчета

  • 'PDF' - PDF файла

  • 'DOCX' - документ Microsoft Word

Если вы задаете шаблон используя TemplatePath свойство, значение для Type должен совпадать с типом шаблона.

Методы

Использование DocumentPart методы, такие как вы используете соответствующую Document методы.

Метод

Цель

addHTML

Использование DocumentPart.addHTML способом, подобным тому, как вы используете Document.addHTML.

Добавить текст HTML к документу

addHTMLFile

Использование DocumentPart.addHTMLFile способом, подобным тому, как вы используете Document.addHTMLFile.

Добавить HTML файла содержимое к документу

append

Добавить элемент документа к позиции документа.

close

Закройте эту часть документа. Вы не можете закрыть часть документа, если она не была открыта или ранее закрыта.

mlreportgen.dom.Document.createTemplate

Создайте шаблон детали документа.

fill

Заполните отверстие документа.

mlreportgen.dom.Document.getCoreProperties

Получение свойств ядра части документа.

mlreportgen.dom.Document.getOPCMainPart

Получите полный путь к основной части выхода документа.

moveToNextHole

Перейдите к следующему отверстию шаблона.

open

Откройте эту часть документа. Вы не можете открыть часть документа, если она была ранее открыта или закрыта. Вы также не можете открыть элемент документа, если его источник библиотеки закрыт.

mlreportgen.dom.Document.setCoreProperties

Установите основные свойства части документа.

Примеры

свернуть все

Этот пример создает функцию createMagicParts который задает деталь документа на основе пустого шаблона детали документа. Новая часть документа имеет заголовок, текст которого зависит от входа. Каждая сгенерированная часть документа содержит магическую квадратную таблицу, внешний вид которой также основан на входе. Пример создает содержащую функцию magicparts который итерационно добавляет к отчету часть документа на основе входов.

Создайте функцию.

function magic_square_report(square_sizes, report_type)
%MAGIC_SQUARE_REPORT Report on magic squares
%    magic_square_report(square_sizes, report_type) 
%    creates a report of the specified output type 
%    (docx, pdf, or html) on the specified magic
%    squares. For example, to create a PDF report on 
%    squares of size 5, 10, and 15, enter the following 
%    line at the MATLAB command line:
%
%      magic_square_report([5,10,15],'pdf');

import mlreportgen.dom.*;
rpt = Document('MagicSquareReport',report_type);
open(rpt);
for i = 1:length(square_sizes)
    sz = square_sizes(i);
    section = createSquareSection(rpt,sz);
    append(rpt,section);
end
close(rpt);
rptview(rpt.OutputPath);
 
function section = createSquareSection(rpt,square_size)
import mlreportgen.dom.*;
% Create document part to hold section
section = DocumentPart(rpt.Type);
% Create magic square heading
h1 = Heading1(sprintf('magic(%i)',square_size));
% Put each square on a separate page.
h1.Style = {PageBreakBefore(true)};
append(section,h1);
% Create table to hold square
table = append(section, Table(magic(square_size)));
% Format table
table.Border = 'solid';
table.ColSep = 'solid';
table.RowSep = 'solid';

Вызовите функцию, чтобы сгенерировать отчет. Измените входные параметры, чтобы изменить содержимое или формат вывода. Этот пример создает документ Word, содержащий три квадрата.

 magic_square_report([5,8,12],'docx');