exponenta event banner

Горизонтально выровнять содержимое записи таблицы

В этом примере показано, как задать выравнивание записей таблицы по горизонтали в неформальных и формальных таблицах DOM API. В примере показано, как установить выравнивание всех записей таблицы, записей в строке и отдельных записей.

Настройка документа и данных

Импортируйте пакет DOM, чтобы не использовать длинные, полные имена классов.

import mlreportgen.dom.*

Создание и открытие документа PDF. Чтобы создать документ Word, измените тип вывода с pdf кому docx. Чтобы создать HTML-документ, измените pdf кому html или html-file для многофайлового или однофайлового документа соответственно.

d = Document("mydoc","pdf");
open(d);

Определите стили для таблицы, строки верхнего колонтитула и строки нижнего колонтитула.

tableStyle = { Width("80%"), ...
               Border("solid"), ...
               RowSep("solid"), ...
               ColSep("solid") };

headerStyle = { BackgroundColor("LightBlue"), ...
                Bold(true) };

footerStyle = { BackgroundColor("LightCyan"), ...
                ColSep("none"), ...
                WhiteSpace("preserve") };

Определите содержимое для строки заголовка таблицы, основной строки и строки нижнего колонтитула.

headerContent = {'Item', 'Quantity', 'Cost'};
bodyContent = {'Table', 1, 55; ...
               'Chair', 4, 100; ...
               'Bookshelf', 2, 40};

total = sum([bodyContent{:,3}]);
footerContent = {[],'Total ',total};

tableContent = [headerContent; bodyContent];

Установка выравнивания всех записей таблицы

Для первой таблицы центрируйте все записи таблицы, установив одно свойство таблицы.

Создание mlreportgen.dom.Table с использованием ранее определенного содержимого. Назначьте стили таблице и первой строке таблицы.

append(d,Heading1("All Table Entries Centered"));

table = Table(tableContent);
table.Style = tableStyle;

firstRow = table.Children(1);
firstRow.Style = headerStyle;

Задайте выравнивание всех записей таблицы по горизонтали, установив TableEntriesHAlign свойство для "center". Добавьте таблицу к документу.

table.TableEntriesHAlign = "center";
append(d, table);

Задание выравнивания записей в строке таблицы

Для следующей таблицы центрируйте только записи таблицы верхней строки путем изменения строки. Style собственность.

Назначьте стили таблице и первой строке таблицы. Вместо установки выравнивания по горизонтали TableEntriesHAlign свойство, создайте HAlign и включить его в Style свойства первой строки вместе со стилем заголовка, определенным ранее.

append(d,Heading1("Top Row Entries Centered"));

table = Table(tableContent);
table.Style = tableStyle;

firstRow = table.Children(1);
firstRow.Style = [{HAlign("center")},headerStyle];

append(d,table);

Выравнивание, определенное для строки таблицы Style свойство строки таблицы переопределяет выравнивание, определенное для всей таблицы TableEntriesHAlign собственность.

Установка выравнивания заголовка формальной таблицы и отдельной записи в нижнем колонтитуле

Для последней таблицы создайте формальную таблицу с помощью mlreportgen.dom.FormalTable объект. Центрируйте записи заголовка таблицы и выровняйте одну запись нижнего колонтитула вправо.

Создание mlreportgen.dom.FormalTable объект. Задайте стили общей таблицы, верхнего и нижнего колонтитулов. Потому что заголовок FormalTable объект отделен от тела, можно задать выравнивание записей заголовка с помощью TableEntriesHAlign не влияя на текст или нижний колонтитул. Кроме того, можно добавить HAlign объект к строке Style собственность.

append(d, Heading1("Header Entries Centered, One Footer Entry Right-Aligned"));

table = FormalTable(headerContent,bodyContent,footerContent);
table.Style = tableStyle;

table.Header.TableEntriesHAlign = "center";
table.Header.Style = headerStyle;

footer = table.Footer;
footer.Style = footerStyle;

Выровнять вторую запись нижнего колонтитула вправо, включив HAlign объект в Style свойство записи. Сделайте запись полужирной, добавив mlreportgen.dom.Bold объект.

totalEntry = entry(footer,1,2);
totalEntry.Style = {HAlign("right"),Bold(true)};

append(d,table);

Закройте и просмотрите документ.

close(d);
rptview(d);

См. также

| |

Связанные темы