exponenta event banner

класс mlreportgen.dom.EmbeddedObject

Пакет: 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, где CLASS - класс объекта, а ID - значение Id свойства объекта. Указание собственного значения тега может помочь определить, где возникла проблема во время создания документа.

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

Методы

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

Примеры

свернуть все

Создание документа 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.

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

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

В R2020b изменилось поведение

Представлен в R2020a