mlreportgen.dom.EmbeddedObject class

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

Встройте файл в документ

Описание

Используйте объект mlreportgen.dom.EmbeddedObject класс, чтобы встроить файл в документ. Преимущество встраивания файла в документе, вместо того, чтобы соединиться с ним, состоит в том, что можно переместить документ, не перемещая конечный файл.

Можно добавить mlreportgen.dom.EmbeddedObject возразите против объектов этих классов DOM:

  • mlreportgen.dom.Document

  • mlreportgen.dom.DocumentPart

  • mlreportgen.dom.Paragraph

  • mlreportgen.dom.TableEntry

  • mlreportgen.dom.TableHeaderEntry

  • mlreportgen.dom.ListItem

Эффект добавления EmbeddedObject объект к Объекту DOM зависит от выходного типа документа и внешнего типа файла, как описано в этой таблице.

Выходной тип документаВнешний тип файлаПоведение
Wordxlsx, pptx, docx

Встраивает внешний файл в документ и вставляет Связывание объектов и Встраивание (OLE) ссылка на встроенный файл.

Если вы открываете документ, не открывая сначала его с rptview, ссылка OLE отображает изображение заполнителя. После того, как вы открываете документ с rptview, ссылка OLE отображает изображение встроенного содержимого файла. Чтобы видеть и отредактировать встроенное содержимое файла, дважды кликните изображение.

WordЛюбой тип кроме xlsx, pptx, или docx

Не встраивает файл в документ. Вставляет гиперссылку на внешний файл.

PDFЛюбой

Встраивает внешний файл в документ и вставляет аннотацию, которая имеет значок скрепки. Чтобы открыть встроенный файл, дважды кликните значок.

Чтобы видеть значок скрепки, необходимо открыть PDF за пределами MATLAB®. Если вы все еще не видите значок скрепки, попытайтесь открыть PDF с помощью различного средства просмотра PDF, такого как Adobe® Acrobat®. Если необходимо открыть PDF с помощью средства просмотра, которое не отображает значок скрепки, вместо того, чтобы встроить документ, рассматривает соединение с документом при помощи mlreportgen.dom.ExternalLink объект.

HTMLЛюбой

Встраивает внешний файл в документ и вставляет гиперссылку на встроенный файл.

В документе HTML работает гиперссылка, только если вы открываете документ за пределами MATLAB.

Однофайловый HTMLЛюбой

Не встраивает файл в документ. Вставляет гиперссылку на внешний файл.

Гиперссылка работает, только если вы открываете документ за пределами MATLAB.

mlreportgen.dom.EmbeddedObject классом является handle класс.

Атрибуты класса

ConstructOnLoad
true
HandleCompatible
true

Для получения информации об атрибутах класса см. Атрибуты класса.

Создание

Описание

embObj = mlreportgen.dom.EmbeddedObject() создает пустой EmbeddedObject объект. Чтобы задать файл, чтобы встроить, используйте свойство Target.

пример

embObj = mlreportgen.dom.EmbeddedObject(path) устанавливает свойство Target на путь файла встраивать.

пример

embObj = mlreportgen.dom.EmbeddedObject(path,linkText) также задает текст ссылки. Текст ссылки применяется только, когда ссылка на файл является гиперссылкой. Этот конструктор создает mlreportgen.dom.Text возразите, чтобы содержать текст ссылки.

embObj = mlreportgen.dom.EmbeddedObject(path,linkText,styleName) задает имя заданного шаблоном стиля, чтобы использовать для текста ссылки. Этот конструктор создает mlreportgen.dom.Text возразите, чтобы содержать текст ссылки и наборы StyleName свойство Text возразите против styleName.

embObj = mlreportgen.dom.EmbeddedObject(path,linkTextObj) использует mlreportgen.dom.Text объект задать текст ссылки.

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

развернуть все

Путь файла, чтобы встроить в виде вектора символов или строкового скаляра.

Текст ссылки в виде вектора символов или строкового скаляра. Текст ссылки применяется только, когда ссылка на файл является гиперссылкой.

Текст ссылки в виде mlreportgen.dom.Text объект. Текст ссылки применяется только, когда ссылка на файл является гиперссылкой.

Имя заданного шаблоном стиля, чтобы использовать для текста ссылки в виде вектора символов или строкового скаляра.

Свойства

развернуть все

Путь файла, чтобы встроить в документ в виде вектора символов или строкового скаляра.

Имя стиля, чтобы использовать для ссылки в виде вектора символов или строкового скаляра. Стиль задан StyleName свойство должно быть задано в шаблоне, который используется, чтобы создать документ который EmbeddedObject добавлен. StyleName свойство применяется только, когда ссылка на файл является гиперссылкой.

Форматы, которые задают стиль ссылки в виде массива ячеек объектов формата DOM. Форматы заданы в Style форматы переопределения свойства заданы заданным шаблоном стилем. Style свойство применяется только, когда ссылка на файл является гиперссылкой.

Пользовательские атрибуты ссылки в виде массива ячеек mlreportgen.dom.CustomAttribute объекты. Выходной формат должен поддержать пользовательские атрибуты. CustomAttributes свойство применяется только, когда ссылка на файл является гиперссылкой.

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

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

Пометьте для этого элемента документа в виде вектора символов или строкового скаляра.

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

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

Методы

развернуть все

Примеры

свернуть все

Создайте документ Word, CompanyInfo.docx, и встройте его во второй документ Word, CompanyReport.docx.

import mlreportgen.dom.*

doc1 = Document('CompanyInfo','docx');
append(doc1, 'XYZ, Inc., makes widgets.');
close(doc1);

doc1Path = doc1.OutputPath;

doc2 = Document('CompanyReport','docx');
open(doc2);

para = append(doc2,Paragraph('About XYZ, Inc.'));
append(doc2, EmbeddedObject(doc1Path));
close(doc2);
rptview(doc2);

Документ, CompanyReport.docx, отображает изображение встроенного файла.

Document text, "About XYZ, Inc.", followed by a clickable image that reads XYZ, Inc., makes widgets.

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

Создайте PDF, bio.pdf, и встройте его в документ HTML, author.html. Задайте текст ссылки в mlreportgen.dom.EmbeddedObject конструктор. Сделайте ссылку зеленой.

import mlreportgen.dom.*
doc1 = Document('bio','pdf');
para = 'The author was born in New York, NY in 1970.';
append(doc1,para);
close(doc1);

doc2 = Document('author','html');
doc2.PackageType = 'unzipped';

embedObj = EmbeddedObject('bio.pdf','Author Biography');
embedObj.Style={Color('green')};
p = Paragraph();
append(p,embedObj);
append(doc2,p);

close(doc2);
rptview(doc2);

Документ author отображает ссылку на встроенный документ.

The link text is "Author Biography". The link and text are green.

Чтобы открыть встроенный документ, откройте author/root.html за пределами MATLAB.

Альтернативная функциональность

mlreportgen.dom.DOCXSubDoc

Чтобы вставить документы Word в другой документ, можно использовать объекты DOCXSubDoc или EmbeddedObject класс. Чтобы решить который класс использовать, рассмотрите эти инструкции:

  • Используйте DOCXSubDoc объекты, если вы хотите, чтобы родительский документ отобразил ссылки на поддокументы первоначально. Вы можете хотеть отобразить ссылки первоначально, когда родительские ссылки на документ на набор поддокументов в схеме просматривают. Используйте EmbeddedObject объекты, если вы хотите, чтобы родительский документ отобразил содержимое поддокумента независимо от того, открываете ли вы родительский документ в Word или при помощи rptview.

  • Используйте EmbeddedObject объекты, если вы хотите переместить родительский документ, не перемещая поддокументы.

Вопросы совместимости

развернуть все

Поведение изменяется в R2020b

Введенный в R2020a