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

Импортируйте пакеты DOM API, чтобы не использовать длинные, полные имена классов.
import mlreportgen.dom.*;Создание и открытие отчета.
d = Document('myreport', 'docx'); open(d);
Получите текущий объект макета страницы.
currentLayout = d.CurrentPageLayout;
Создайте определение заголовка страницы для документа DOCX.
docxheader = DOCXPageHeader();
Создайте Paragraph DOM объект и сделать его выровненным по центру и полужирным. Установите размер шрифта равным 12pt. Добавьте его к 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 и включите выборочные данные в разделы Заголовок (Header) и Тело (Body).
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);The Top свойство PageMargins объект задает высоту запаса. The Header свойство задает расстояние от верхней части страницы до начала заголовка. Расстояние от верхней части страницы до тела страницы зависит от Top свойство, Header свойство и высота содержимого заголовка. Для примера, если Header свойство меньше, чем Top свойство, заголовок начинается с верхнего поля и расширяется вниз, чтобы включать содержимое заголовка. Тело начинается в нижней части поля или заголовка, который всегда больше.
Используйте следующие настройки, чтобы убедиться, что заголовок помещается в Top маржа. Установите Top свойство до 1 дюйма. 1 дюйм равен 72 точкам, поэтому 0,25 дюйма равен 18 ст. Установите 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 объект. Используйте DOM- ScaleToFit формат для масштабирования изображения в соответствии со строкой страницы. Назначьте созданные docxfooter объект для PageFooters текущего макета страницы.
imgStyle = {ScaleToFit(true), HAlign('right'), Height('0.30in')};
img = Image('Logo_footer.Png');
img.Style = imgStyle;
append(docxfooter, img);
currentLayout.PageFooters = docxfooter;The Bottom свойство PageMargins объект задает высоту поля страницы. The Footer свойство задает расстояние от нижней части страницы до нижней части нижнего колонтитула. Расстояние от нижней части страницы до тела страницы зависит от настроек Bottom и Footer свойства и высота нижнего колонтитула. Для примера, если Footer свойство меньше, чем Bottom свойство, нижний колонтитул начинается с нижнего поля и расширяется вверх, расширяя содержимое нижнего колонтитула. Тело начинается в верхней части поля или нижнего колонтитула, в зависимости от того, что больше.
Установите Bottom значение свойства до 1 дюйма. Для размещения 0.30 high Image и горизонтальное правило, созданное в DOCX Footer, установите Footer значение свойства до 0,5 дюйма.

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

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