Этот пример показывает, как задать поля страницы, одним словом (DOCX) отчет. Можно задать верхнюю часть, нижнюю часть, оставленную, правые поля для страницы DOCX, плюс ее заголовок, нижний колонтитул и размеры поля.

Импортируйте пакеты API DOM, таким образом, вы не должны использовать долго, полностью определенные имена классов.
import mlreportgen.dom.*;Создайте и откройте отчет.
d = Document('myreport', 'docx'); open(d);
Получите текущий объект макета страницы.
currentLayout = d.CurrentPageLayout;
Создайте определение верхнего колонтитула страницы для документа DOCX.
docxheader = DOCXPageHeader();
Создайте объект DOM Paragraph и заставьте его центрироваться выровненный и полужирный. Установите его размер шрифта на 12 ПБ. Добавьте его к объекту DOCXPageHeader.
p = Paragraph('Sample Traffic Data in Austin'); p.Style = [p.Style, {HAlign('center'), Bold(true), FontSize('12pt')}]; append(docxheader, p);
Присвойте созданный объект docxheader PageHeaders текущего макета страницы.
currentLayout.PageHeaders = docxheader;
Создайте массивы ячеек для стилей, которые будут использоваться формальной таблицей и ее записями таблицы.
dataTableStyle = {Border('solid'), ColSep('solid'), RowSep('solid'), Width('100%')...
OuterMargin('0pt', '0pt', '0pt', '0pt')};Создайте некоторые выборочные данные из камеры трафика Остина, чтобы включать в таблицу. Затем создайте объект FormalTable и включайте выборочные данные в разделы Заголовка и Тела.
dataHeader = {'Camera ID', 'Status', 'Manufacturer', 'Signal Engineer Area'};
dataBody = {'1', 'TURNED_ON', 'Spectra', 'NORTHEAST';
'2', 'TURNED_ON', 'Sarix', 'NORTHWEST';
'3', 'TURNED_OFF', 'Spectura', 'SOUTHWEST';
'3', 'TURNED_ON', 'Spectura', 'NORTHEAST';
'4', 'TURNED_ON', 'Sarix', 'SOUTHEAST';
'5', 'TURNED_ON', 'Spectra', 'NORTHEAST';
'6', 'TURNED_ON', 'Sarix', 'NORTHWEST';
'7', 'TURNED_OFF', 'Spectura', 'SOUTHWEST';
'8', 'TURNED_ON', 'Spectura', 'NORTHEAST';
'9', 'TURNED_ON', 'Sarix', 'SOUTHEAST'};
dataTable = FormalTable(dataHeader, dataBody);
dataTable.Header.Style = [dataTable.Header.Style {Bold}];
dataTable.Style = [dataTable.Style dataTableStyle];
append(d, dataTable);Свойство Top объекта PageMargins задает высоту поля. Header propery задает расстояние от начала страницы до запуска заголовка. Расстояние от начала страницы до тела страницы зависит от свойства Top, свойства Header и высоты содержимого заголовка. Например, если свойство Header является меньше, чем свойство Top, заголовок запускается в верхнем поле и расширяется вниз, чтобы разместить содержимое заголовка. Тело начинается в нижней части поля или заголовка, который когда-либо больше.
Используйте следующие настройки, чтобы гарантировать, что заголовок помещается в поле Top. Установите свойство Top на 1 дюйм. 1 дюйм равняется 72 точкам, таким образом, 0,25 дюйма равняются 18 pts. Установите значение Header к 0,75 дюймам, когда остающихся 0,25 дюймов достаточно, чтобы разместить 12 pts Paragraph, созданный в Заголовке DOCX.

currentLayout.PageMargins.Top = '1in'; currentLayout.PageMargins.Header = '0.75in';
Создайте определение нижнего колонтитула для документа DOCX.
docxfooter = DOCXPageFooter();
Добавьте горизонтальное правило к объекту docxfooter.
append(docxfooter, HorizontalRule());
Добавьте изображение к объекту docxfooter. Используйте формат ScaleToFit DOM, чтобы масштабировать изображение, чтобы поместиться в страницу. Присвойте созданный объект docxfooter PageFooters текущего макета страницы..
imgStyle = {ScaleToFit(true), HAlign('right'), Height('0.30in')};
img = Image('Logo_footer.Png');
img.Style = imgStyle;
append(docxfooter, img);
currentLayout.PageFooters = docxfooter;Свойство Bottom объекта PageMargins задает высоту поля страницы. Свойство Footer задает расстояние от конца страницы до нижней части нижнего колонтитула. Расстояние от конца страницы до тела страницы зависит от настроек свойств Bottom и Footer и высоты содержимого нижнего колонтитула. Например, если свойство Footer является меньше, чем свойство Bottom, нижний колонтитул запускается в нижнем поле и расширяется вверх, чтобы расширить содержимое нижнего колонтитула. Тело запускается наверху поля или нижнего колонтитула, какой бы ни больше.
Установите значение свойства Bottom на 1 дюйм. Чтобы разместить 0,30 высоких Image и горизонтальное правило, созданное в Нижнем колонтитуле DOCX, установите значение свойства Footer на 0,5 дюйма.

currentLayout.PageMargins.Bottom = '1in'; currentLayout.PageMargins.Footer = '0.5in';
Этот пример использует установку Gutter, чтобы уехать, комната на левой стороне страницы для привязки report. The Gutter размера установлена в 0,25 дюйма, и поле Left установлено в 0,5 дюйма. Так, содержимое начинает с 0,75 дюймов (левое поле + поле) с левой стороны страницы. Поле Right установлено в 0,5 дюйма.

currentLayout.PageMargins.Gutter = '0.25in'; currentLayout.PageMargins.Left = '0.5in'; currentLayout.PageMargins.Right = '0.5in';
Сгенерируйте и отобразите отчет.
close(d); rptview(d.OutputPath);