В этом примере показано, как установить ширину столбцов для Table
DOM и
FormalTable
.
Импортируйте пакет API DOM, таким образом, вы не должны использовать долго, полностью определенные имена классов.
import mlreportgen.dom.*
Создайте и откройте документ. Чтобы создать документ Word, измените выходной тип от pdf
к docx
. Чтобы создать документ HTML, измените pdf
к html
или html-file
для многофайлового или однофайлового документа, соответственно.
d = Document("mydoc","pdf"); открытый (d);
Таблица Define, записи таблицы и стили строки заголовка, которые будут использоваться в более поздних разделах.
tableStyle = ... { ... Width("100%"), ... Border("solid"), ... RowSep("solid"), ... ColSep("solid") ... }; tableEntriesStyle = ... { ... HAlign("center"), ... VAlign("middle") ... }; headerRowStyle = ... { ... InnerMargin("2pt","2pt","2pt","2pt"), ... BackgroundColor("gray"), ... Bold(true) ... };
Задайте содержимое для табличной строки заголовка и табличного тела, которое будет использоваться позже, чтобы создать Table
DOM с тремя столбцами и
FormalTable
.
headerContent = ... { ... 'First Name', 'Last Name', 'Address' ... }; bodyContent = ... { ... 'John', 'Smith', 'Natick, MA'; ... 'Jane', 'Doe', 'Boston, MA'; ... 'Robert', 'Stewart', 'Natick, MA' ... };
Следующий код использует TableColSpecGroup
DOM задавать стили для группы столбцов в таблице. Установка
Span
свойство к 3
применяет форматирование группы ко всем трем столбцам таблицы. Чтобы отформатировать один или несколько смежных столбцов таблицы в группе, используйте TableColSpec
DOM объекты. Первый
TableColSpec
объект, specs(1)
, промежутки к первому 2
столбцы в группе. Установите Width
формат в его Style
свойство сделать каждый из этих двух столбцов 20%
из таблицы width. Второй TableColSpec
объект, specs(2)
, промежутки к отдельному столбцу, то есть, третьему столбцу в группе, и отформатированы, чтобы быть 60%
из таблицы width.
grps(1) = TableColSpecGroup; grps(1).Span = 3; specs(1) = TableColSpec; specs(1).Span = 2; specs(1).Style = {Width("20%")}; specs(2) = TableColSpec; specs(2).Span = 1; specs(2).Style = {Width("60%")}; grps(1).ColSpecs = specs;
Следующий код добавляет заголовок и Table
DOM к документу. Присвоение
grps
, созданный в вышеупомянутом коде, к ColSpecGroups
свойство таблицы, делает первые 2 столбца 20% и третий столбец 60% таблицы width. Код также присваивает стили для таблицы, записей таблицы и первой строки таблицы.
append(d,Heading1("Set column width for a DOM Table"));
tableContent = [headerContent; bodyContent];
table = Table(tableContent);
table.ColSpecGroups = grps;
table.Style = tableStyle;
table.TableEntriesStyle = tableEntriesStyle;
firstRow = table.Children(1);
firstRow.Style = headerRowStyle;
append(d,table);
Следующий код добавляет заголовок и FormalTable
DOM к документу. Присвоение
grps
к ColSpecGroups
свойство формальной таблицы делает первые 2 столбца 20% и третий столбец 60% таблицы width. Код также присваивает стили для формальной таблицы, записей таблицы и строки заголовка формальной таблицы.
append(d,Heading1("Set column width for a DOM FormalTable"));
formalTable = FormalTable(headerContent,bodyContent);
formalTable.ColSpecGroups = grps;
formalTable.Style = tableStyle;
formalTable.TableEntriesStyle = tableEntriesStyle;
headerRow = formalTable.Header.Children;
headerRow.Style = headerRowStyle;
append(d,formalTable);
Закройте и просмотрите документ.
close(d); rptview(d);