Можно настроить содержимое и формат глав, сгенерированных Report API Chapter Reporter, mlreportgen.report.Chapter
. Можно выполнить некоторые индивидуальные настройки путем установки свойств. Например, можно использовать Chapter reporter Layout
свойство для изменения размещения главы с портрета на пейзаж. Для получения дополнительной информации о индивидуальных настройках глав, которые доступны путем установки свойств, смотрите mlreportgen.report.Chapter
.
Для других индивидуальных настроек необходимо изменить шаблон Chapter reporter, файл определения класса или файл определения шаблона и класса. Чтобы настроить только статическое содержимое, например логотип в заголовке страницы, измените шаблон по умолчанию Chapter reporter и используйте измененный шаблон с репортером. Чтобы настроить динамическое содержимое или как динамическое, так и статическое содержимое, создайте пользовательский репортер Chapter и измените его шаблон и файл определения класса.
Пример для настройки заголовков страниц главы с фиксированным и динамическим содержимым см. в разделе Настройка заголовков страниц главы.
Если индивидуальная настройка главы включает только статическое содержимое, создайте копию шаблона главы, отредактируйте копию и используйте новый шаблон при создании отчета.
Создайте шаблон
Создайте копию шаблона главы для типа отчета, который планируется создать. Например, чтобы скопировать шаблон для главы PDF в файл mychapter.pdftx
в папке mytemplates
, введите:
mlreportgen.report.Chapter.createTemplate('mytemplates/mychapter','pdf');
Редактирование шаблона
Способ редактирования шаблона главы зависит от типа создаваемого отчета:
Использование шаблона
В программе генерации отчетов:
Определите главу reporter.
Установите TemplateSrc
свойство репортера в путь пользовательского шаблона.
Для примера:
chapter = mlreportgen.report.Chapter;
chapter.TemplateSrc = 'mytemplates/mychapter.mychapter.pdftx';
Если индивидуальная настройка главы включает динамическое содержимое, необходимо создать пользовательский класс репортера скелета, чтобы можно было задать свойства для динамического содержимого. При создании пользовательского репортера главы скелета шаблоны глав для всех типов отчетов (PDF, Word и HTML) копируются в resources/templates
папка. Отредактируйте шаблон главы, чтобы содержать содержимое, которое необходимо сгенерировать. Добавить отверстия для динамического содержимого. При создании отчета используйте пользовательскую главу reporter и присвойте значения свойствам, соответствующим отверстиям.
Создайте пользовательский класс репортера скелета
Используйте mlreportgen.report.Chapter.customizeReporter
метод для:
Создайте класс skeleton reporter.
Скопируйте шаблоны по умолчанию для каждого типа отчета в resources/templates
папка.
Например, этот код создает класс с именем Chapter
и копирует шаблоны в resources/templates
папка в папке +myCompany/@Chapter
:
mlreportgen.report.Chapter.customizeReporter('+myCompany/@Chapter')
Редактирование шаблона
Способ редактирования шаблона главы зависит от типа создаваемого отчета:
Определите свойства для динамического содержимого
В пользовательском классе reporter задайте свойство для каждого отверстия, добавленного к шаблону. Для примера:
classdef myChapter < mlreportgen.report.Chapter properties Project = '' Date = '' end ... end
Имя свойства должно совпадать с идентификатором отверстия в шаблоне PDF или с Title отверстия в шаблоне Word.
Использование пользовательского класса Reporter
В программе генерации отчетов:
Создайте раздел reporter из пользовательского класса chapter reporter.
Присвойте значения свойствам reporter, которые соответствуют отверстиям в шаблоне.
Для примера:
chapter = myCompany.Chapter();
chapter.Project = 'ABC Project';
chapter.Date = date;
Файл шаблона главы PDF является zip-файлом. Чтобы изменить шаблон, разархивируйте файл шаблона, редактируйте docpart_templates.html
в текстовом редакторе и упаковать извлеченные файлы обратно в zip-файл. См. шаблоны глав».
Определение местоположения файла шаблона
Если файл шаблона был создан при помощи mlreportgen.report.Chapter.createTemplate
упакованный файл шаблона находится в указанном месте. Для примера этот код создает файл шаблона mychapter.pdftx
в mytemplates
папка:
mlreportgen.report.Chapter.createTemplate('mytemplates/mychapter','pdf');
Если файл шаблона был создан при помощи mlreportgen.report.Chapter.customizeReporter
файл шаблона имеет имя default.pdftx
и находится в resources/templates/pdf
подпапка папки, содержащей файл определения класса reporter.
Разархивируйте файл шаблона
Разархивируйте файл пакета при помощи unzipTemplate
функция. Например, этот код извлекает файлы из файла шаблона mytemplates/mychapter.pdftx
в папку mychapter
:
unzipTemplate('mytemplates/mychapter.pdftx','mychapter');
Извлеченные файлы включают:
docpart_templates.html
root.html
Папки для изображений и таблиц стилей
Отредактируйте разметку
Откройте docpart_templates.html
в текстовом редакторе и отредактируйте разметку.
Чтобы задать отверстие для динамического содержимого, используйте hole
элемент. Когда вы добавляете свойство для отверстия в пользовательском репортере главы, имя свойства должно совпадать с именем отверстия id
значение.
Измените колонтитул путем редактирования шаблона колонтитула в dptemplate
элемент с именем Section1
. Шаблоны для колонтитулов SectionFirstPageHeader
, SectionFirstPageFooter
, SectionDefaultPageHeader
, SectionDefaultPageFooter
, SectionEvenPageHeader
, и SectionEvenPageFooter
.
Чтобы задать один и тот же колонтитул для всех страниц главы, укажите только SectionDefaultPageHeader
или SectionDefaultPageFooter
в списке шаблонов колонтитулов. Удалите другие колонтитулы из списка.
Примечание
Используйте существующие dptemplate
элементы. Не создавайте свои собственные dptemplate
элементы или изменение значений Name
атрибут dptemplate
элементы.
Упаковать файлы шаблонов
Упакуйте файлы обратно в файл шаблона с помощью zipTemplate
функция. Для примера, если mytemplates/mychapter
содержит распакованные файлы, этот код упаковывает файлы в mychapter.pdftx
в mytemplates
папка.
zipTemplate('mytemplates/mychapter.pdftx','mytemplates/mychapter');
Для редактирования шаблона Word:
Откройте файл шаблона в Word.
Создайте временную копию шаблона Section1 в документе шаблона,. Шаблон Section1, который используется как для глав, так и для разделов верхнего уровня, находится в Quick Parts галерее документа шаблона.
Отредактируйте временную копию и сохраните ее в Quick Parts галерее.
Удалите временную копию из документа шаблона и сохраните файл шаблона.
Определение местоположения файла шаблона
Если файл шаблона был создан при помощи mlreportgen.report.Chapter.createTemplate
файл шаблона находится в указанном месте. Для примера этот код создает файл шаблона mychapter.dotx
в mytemplates
папка:
mlreportgen.report.Chapter.createTemplate('mytemplates/mychapter','docx');
Если файл шаблона был создан при помощи mlreportgen.report.Chapter.customizeReporter
файл шаблона имеет имя default.dotx
и находится в resources/templates/docx
подпапка папки, содержащей файл определения класса reporter.
Откройте файл шаблона в Word
Откройте файл шаблона одним из следующих методов:
В MATLAB®, в Current Folder
щелкните правой кнопкой мыши файл шаблона и выберите «Открыть вне MATLAB».
За пределами MATLAB щелкните правой кнопкой мыши файл шаблона и выберите команду Открыть.
Примечание
Не кликните файл шаблона Word дважды, чтобы открыть его. Двойной щелчок по файлу открывает файл документа Word, в котором используется шаблон.
Шаблон документа откроется на пустой странице.
Показать символы форматирования
Чтобы сделать абзац и символы форматирования видимыми, на вкладке «Главная страница» нажмите кнопку Show/Hide.
Скопируйте шаблон Section1 в документ шаблона
Установите курсор перед абзацем в документе шаблона.
На вкладке Insert, в группе Text, нажмите Quick Parts, а затем щелкните Section1 базовый блок.
Word вставляет копию шаблона Section1 и фиктивный раздел Section2. Раздел манекена игнорируется при создании отчета. Курсор расположен в корпусе манекена.
Прокрутка до Section1 шаблона первой страницы.
Отредактируйте шаблон так, чтобы он содержал содержимое, которое необходимо сгенерировать. Для добавления отверстий к шаблону Word см. раздел «Добавление отверстий в шаблон Microsoft Word».
Для изменения колонтитулов см. Советы по редактированию колонтитулов в шаблоне Word.
Примечание
Используйте существующие шаблоны в галерее Quick Parts. Не создавайте собственные шаблоны и не изменяйте имена существующих шаблонов.
Сохраните шаблон в коллекции быстрых деталей
Если колонтитул открыт, закройте его, дважды кликнув страницу за пределами колонтитула.
Выберите все содержимое шаблона нажатием Ctrl+A.
На вкладке Insert щелкните Quick Parts и выберите Save Selection to Quick Parts Gallery.
В Create New Building Block окне в поле Name введите Section1. Установите Gallery значение Quick Parts, Category значение mlreportgen
и Save in к имени файла шаблона.
Сохранение файла шаблона
Перед сохранением файла шаблона лучшей практики удалить содержимое из тела документа шаблона.
Вот несколько советов по редактированию колонтитулов в шаблоне Word.
Чтобы контролировать, отличаются ли колонтитулы на первой странице от колонтитулов на следующих страницах, дважды щелкните по заголовку. Затем, под Header and Footer Tools, на вкладке Design, установите или снимите флажок Different First Page.
Чтобы контролировать, отличаются ли четные колонтитулы страниц от нечетных колонтитулов страниц, установите или снимите флажок Different Odd and even Pages.
Чтобы увидеть колонтитулы для страниц, следующих за первой страницей, добавьте пустые абзацы на первую страницу до создания второй Section1 страницы. Дважды кликните заголовок на новой странице.
Заголовок первой страницы по умолчанию включает горизонтальное правило, которое является нижним ребром небольшого абзаца. Чтобы сделать правило невидимым, выберите малый абзац. Затем на вкладке Home, в группе Paragraph, Borders > No Border.
mlreportgen.report.Chapter
| unzipTemplate
| zipTemplate