Можно добавить два вида списков к отчету:
Неупорядоченный (маркируемый)
Упорядоченный (пронумерованный)
Многоуровневый (списки, которые содержат упорядоченный или неупорядоченные списки в любой комбинации),
Можно создать списки из числового массива или массива ячеек или одного элемента за один раз.
Создание списка от массива ячеек позволяет вам включать элементы различных типов в списке.
При создании списка один элемент за один раз полезен для включения нескольких объектов в элементе списка.
Можно создать неупорядоченный список путем добавления одномерного числового массива или массива ячеек к документу (или часть документа). Функция append
преобразовывает массив в объект mlreportgen.dom.UnorderedList
, добавляет объект к документу и возвращает объект, который можно затем отформатировать. В массиве ячеек можно включать векторы символов, числа и некоторые Объекты DOM, такие как объект Text
. Для списка Объектов DOM можно включать, видеть mlreportgen.dom.ListItem
.
import mlreportgen.dom.*; d = Document('myListReport','html'); t = Text('third item'); append(d,{'first item',6,t,'fourth item'}); close(d); rptview(d.OutputPath);
Можно создать неупорядоченный или упорядоченный список из массива включением массива в конструкторе Object OrderedList
или UnorderedList
. В массиве ячеек можно включать векторы символов, числа и некоторые Объекты DOM, такие как объект Text
. Для списка Объектов DOM можно включать, видеть mlreportgen.dom.ListItem
.
Этот пример создает неупорядоченный список. Измените класс UnorderedList
на OrderedList
, чтобы пронумеровать элементы.
import mlreportgen.dom.*; d = Document('unorderedListReport','html'); ul = UnorderedList({Text('item1'),'item 2',3}); append(d,ul); close(d); rptview(d.OutputPath);
Можно создать список один элемент за один раз путем создания объектов mlreportgen.dom.ListItem
и добавления их к объекту UnorderedList
или OrderedList
.
Этот пример создает упорядоченный список. Измените класс OrderedList
на UnorderedList
, чтобы использовать элементы маркера.
import mlreportgen.dom.*; d = Document('unorderedListReport','html'); li1 = ListItem('Rank 3 magic square:'); table = append(li1,Table(magic(3))); table.Border = 'inset'; table.Width = '1in'; li2 = ListItem('Second item'); li3 = ListItem('Third item'); ul = OrderedList(); append(ul,li1); append(ul,li2); append(ul,li3); append(d,ul); close(d); rptview(d.OutputPath);
Многоуровневый список является упорядоченным или неупорядоченным списком, элементы списка которого содержат упорядоченный или неупорядоченные списки. Можно создать списки, которые имеют целых девять уровней.
Можно создать многоуровневые списки или из массивов ячеек или из одного списка за один раз. Создание многоуровневого списка, один элемент за один раз полезен для создания элементов списка, которые содержат несколько абзацев, абзацев и таблиц и другие комбинации элементов документа.
Можно использовать любой из этих подходов, чтобы создать многоуровневый список из массива ячеек.
Вложенное множество одномерные массивы ячеек, представляющие подсписки в массиве ячеек с одной размерностью, представляющем родительский список.
import mlreportgen.dom.*; d = Document('orderedListReport','html'); ol = OrderedList({'step 1','step 2',... {'option 1','option 2'},... 'step 3'}); append(d,ol); close(d); rptview(d.OutputPath);
Включайте объекты списка как членов одномерного массива ячеек, представляющего родительский список. Используйте этот подход, чтобы создать упорядоченный подсписки из массивов ячеек.
d = Document('myListReport','html'); append(d,{'1st item',OrderedList({'step 1','step 2'}),'2nd item'}); close(d); rptview(d.OutputPath);
Объедините вложенный массив ячеек и вложенные подходы объекта списка.
Можно создать многоуровневый список с нуля путем добавления дочерних списков к родительским спискам.
import mlreportgen.dom.*; d = Document('orderedListReport','html'); ol = OrderedList({'Start MATLAB', ... 'Create a rank 3 or 4 magic square:'}); optionList = UnorderedList; li = ListItem('>> magic(3)'); table = append(li,Table(magic(3))); table.Width = '1in'; append(optionList, li); li = ListItem('>> magic(4)'); table = append(li,Table(magic(4))); table.Width = '1in'; append(optionList,li); append(ol, optionList); append(ol, ListItem('Close MATLAB'));, append(d,ol); close(d); rptview('orderedListReport','html');
Можно использовать стили списка, заданные в листе стиля отчета, чтобы задать добавление отступа каждого уровня списка и типа маркера, или числовой формат раньше представлял элементы списка. Для PDF и HTML, можно задать тип маркера или нумерующий тип в таблице стилей или использующий свойство формата mlreportgen.dom.ListStyleType
на объекте ListItem
.
Чтобы использовать заданный шаблоном стиль списка, чтобы отформатировать список, установите свойство StyleName
списка к имени стиля. Например:
import mlreportgen.dom.*; d = Document('myListReport','html','MyTemplate'); list = append(d,{'first item',... OrderedList({'step 1','step 2'}),'second item'}); list.StyleName = 'MyListStyle'; close(d); rptview('myListReport','html');
Стиль списка определяет, как элементы списка представляются независимо от типа списка. Если вы не задаете стиль списка, ДОМ АПИ использует стиль списка по умолчанию, который представляет список согласно типу. Например, стиль списка по умолчанию для неупорядоченных списков использует маркеры, чтобы представить элементы списка. Если вы задаете стиль списка для объекта UnorderedList
, что высокоуровневые элементы чисел, элементы верхнего уровня пронумерованы, даже при том, что тип объекта не упорядочен (маркируемый).
Чтобы задать стиль списка, одним словом, обрабатывают по шаблону, выбирают List
как тип стиля в диалоговом окне Create New Style from Formatting. Смотрите Добавляют Стили к Word Template.
Чтобы задать стиль списка в каскадной таблице стилей (CSS) шаблона HTML или PDF, используйте элемент ul
для неупорядоченных стилей списка и элемент ol
для упорядоченных стилей списка. Можно использовать дочерний селектор (>
), чтобы задать многоуровневые стили списка.
Например, этот код CSS задает внешний вид двухуровневого неупорядоченного списка, который может содержать упорядоченный или неупорядоченные подсписки.
ul.MyUnorderedList { list-style-type:disc; } ul.MyUnorderedList > ul { list-style-type:circle; } ul.MyUnorderedList > ol { list-style-type:decimal; }
Для получения информации о редактировании CSS см. документацию, такую как руководство по CSS W3Schools.com.
mlreportgen.dom.ListItem
| mlreportgen.dom.ListStyleType
| mlreportgen.dom.OrderedList
| mlreportgen.dom.UnorderedList