В этом примере показано, как использовать шаблоны генератора отчетов API Отчета, чтобы настроить размер страницы и размеры полей страницы, заголовка, нижнего колонтитула и поля в отчете PDF. В качестве альтернативы можно использовать программируемый подход. Используйте основанный на шаблоне подход, если вы планируете сделать другие модификации к шаблонам. В противном случае используйте программируемый подход. Для примера, который использует программируемый подход, смотрите, Настраивают Размер страницы и Поля Отчета Программно.
По умолчанию API Отчета генерирует 8.5 11-дюймовыми страницами портрета с однодюймовыми полями. Заголовки и нижние колонтитулы являются каждой половиной широкого дюйма, и поле является нулевыми пикселями. Вы, возможно, должны изменить эти размерности в своем отчете. Например, если вы генерируете отчет для европейской локали, вы, возможно, должны сгенерировать страницы A4. В этом примере показано, как сгенерировать страницы A4. Используйте ту же процедуру, чтобы сгенерировать другие измерения страницы.
Чтобы изменить измерения страницы отчета API Отчета, необходимо изменить размерности, заданные шаблонами mlreportgen.report.TitlePage
, mlreportgen.report.TableOfContents
, и mlreportgen.report.Chapter
генераторы отчетов. В этом примере показано, как изменить и использовать шаблон PDF для каждого генератора отчетов.
Создайте копию mlreportgen.report.TitlePage
шаблон PDF значения по умолчанию генератора отчетов.
mlreportgen.report.TitlePage.createTemplate("titlePageTemplate.pdftx", "pdf");
Разархивируйте шаблон.
unzipTemplate("titlePageTemplate.pdftx");
Откройте titlePageTemplate
разархивированная папка.
В редакторе HTML или текстовом редакторе, откройте docpart_templates.html
файл.
Чтобы изменить размер страницы и поля к значениям A4, измените page-margin
и page-size
свойства style
атрибут layout
элемент.
Установите page-margin
значение свойства к:
0.98in 0.98in 0.98in 0.98in 0.5in 0.5in 0in
Это значение задает поля в этом порядке:
Верхнее поле 0,98 дюймов.
Левое поле 0,98 дюймов
Нижнее поле 0,98 дюймов
Правое поле 0,98 дюймов
Заголовок 0,5 дюймов
Нижний колонтитул 0,5 дюймов
Размер поля 0
Установите page-size
свойство к:
8.27in 11.69in portrait
Это значение задает 8.27 11.69 размер страницы дюйма в портретной ориентации.
Шаблон теперь выглядит так:
Сохраните docpart_templates.html
файл.
Архивируйте шаблон.
zipTemplate("titlePageTemplate.pdftx");
Создайте копию mlreportgen.report.TableOfContents
шаблон PDF значения по умолчанию генератора отчетов.
mlreportgen.report.TableOfContents.createTemplate("tableOfContentsTemplate.pdftx", "pdf");
Разархивируйте шаблон.
unzipTemplate("tableOfContentsTemplate.pdftx");
Откройте tableOfContentsTemplate
разархивированная папка.
В редакторе HTML или текстовом редакторе, откройте docpart_templates.html
файл.
Чтобы изменить размер страницы и поля к значениям A4, измените page-margin
и page-size
свойства style
атрибут layout
элемент.
Установите page-margin
значение свойства к:
0.98in 0.98in 0.98in 0.98in 0.5in 0.5in 0in
Это значение задает поля в этом порядке:
Верхнее поле 0,98 дюймов.
Левое поле 0,98 дюймов
Нижнее поле 0,98 дюймов
Правое поле 0,98 дюймов
Заголовок 0,5 дюймов
Нижний колонтитул 0,5 дюймов
Размер поля 0
Установите page-size
свойство к:
8.27in 11.69in portrait
Это значение задает 8.27 11.69 размер страницы дюйма в портретной ориентации.
Шаблон теперь выглядит так:
Сохраните docpart_templates.html
файл.
Архивируйте шаблон.
zipTemplate("tableOfContentsTemplate.pdftx");
Создайте копию mlreportgen.report.Chapter
шаблон PDF значения по умолчанию генератора отчетов.
mlreportgen.report.Chapter.createTemplate("chapterTemplate.pdftx", "pdf");
Разархивируйте шаблон.
unzipTemplate("chapterTemplate.pdftx");
Откройте chapterTemplate
разархивированная папка.
В редакторе HTML или текстовом редакторе, откройте docpart_templates.html
файл.
Чтобы изменить размер страницы и поля к значениям A4, измените page-margin
и page-size
свойства style
атрибут layout
элемент.
Установите page-margin
значение свойства к:
0.98in 0.98in 0.98in 0.98in 0.5in 0.5in 0in
Это значение задает поля в этом порядке:
Верхнее поле 0,98 дюймов.
Левое поле 0,98 дюймов
Нижнее поле 0,98 дюймов
Правое поле 0,98 дюймов
Заголовок 0,5 дюймов
Нижний колонтитул 0,5 дюймов
Размер поля 0
Установите page-size
свойство к:
8.27in 11.69in portrait
Это значение задает 8.27 11.69 размер страницы дюйма в портретной ориентации.
Шаблон теперь выглядит так:
Сохраните docpart_templates.html
файл.
Архивируйте шаблон.
zipTemplate("chapterTemplate.pdftx");
Используйте индивидуально настраиваемый шаблон, чтобы создать отчет PDF относительно магических квадратов, то есть, матрицы, столбцы которых, строки и диагонали каждый составляет в целом тот же номер.
Импортируйте DOM и пакеты API Отчета, чтобы избежать необходимости использовать полностью определенные имена классов.
import mlreportgen.report.*; import mlreportgen.dom.*;
Создайте контейнер отчета.
rpt = Report("report","pdf");
Создайте титульный лист и задайте заголовок, подзаголовок и автора.
title = TitlePage("Title", "Magic Squares"); title.Subtitle = "Columns, Rows, Diagonals: All Equal Sums"; title.Author = "Albrecht Durer";
Используйте пользовательский шаблон титульного листа, чтобы сгенерировать титульный лист.
title.TemplateSrc = fullfile(pwd,"titlePageTemplate.pdftx");
Добавьте титульный лист в отчет.
append(rpt,title);
toc = TableOfContents;
Используйте пользовательский шаблон оглавления, чтобы сгенерировать оглавление.
toc.TemplateSrc = fullfile(pwd,"tableOfContentsTemplate.pdftx");
Добавьте оглавление в отчет.
append(rpt,toc);
Создайте главу и задайте заголовок.
chapter = Chapter("Introduction");
Используйте пользовательский шаблон главы, чтобы сгенерировать главу.
chapter.TemplateSrc = fullfile(pwd,"chapterTemplate.pdftx");
Создайте раздел и добавьте абзац в него.
sec1 = Section("What is a Magic Square?"); para = Paragraph(['A magic square is an N-by-N matrix '... 'constructed from the integers 1 through N^2 '... 'with equal row, column, and diagonal sums.']); append(sec1,para);
Добавьте раздел в главу.
append(chapter,sec1);
Создайте другой раздел и добавьте абзац в него.
sec2 = Section("Albrect Durer and the Magic Square"); para = Paragraph([ ... 'The German artist Albrecht Durer (1471-1528) created '... 'many woodcuts and prints with religious and '... 'scientific symbolism. One of his most famous works, '... 'Melancholia I, explores the depressed state of mind '... 'which opposes inspiration and expression. '... 'Renaissance astrologers believed that the Jupiter '... 'magic square (shown in the upper right portion of '... 'the image) could aid in the cure of melancholy. The '... 'engraving''s date (1514) can be found in the '... 'lower row of numbers in the square.']); append(sec2,para);
Добавьте раздел в главу.
append(chapter,sec2);
Добавьте главу в отчет.
append(rpt,chapter);
close(rpt); rptview(rpt);
mlreportgen.report.Chapter
| mlreportgen.report.TableOfContents
| mlreportgen.report.TitlePage