exponenta event banner

Создание и форматирование текста

Создать текст

Текст можно создать путем добавления вектора символов к документу, абзацу, записи таблицы или элементу списка. DOM append функция преобразует вектор символов в Text объект, добавляет его и возвращает Text объект. Используйте Text объект для форматирования текста. Можно также создать текстовый объект непосредственно и добавить его в документ. Этот пример:

  • Создает Text объект t1 путем добавления 'Hello' документ

  • Использует Text конструктор для создания Text объект и добавление текста 'World' к документу

import mlreportgen.dom.*
d = Document('mydoc','html');

t1 = append(d,'Hello'); 

append(d,Text('World'));

close(d);
rptview(d.OutputPath);

Создать специальные символы

Можно определить специальные символы, такие как британский символ фунта, для включения в отчет путем создания mlreportgen.dom.CharEntity объект. Укажите имя символьной сущности в списке https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references. Например:

import mlreportgen.dom.*;
d = Document('test','html');

p = Paragraph(CharEntity('pound'));
append(d,p);
append(p,'3');

close(d);
rptview(d.OutputPath);

Добавить разметку HTML или XML

Чтобы добавить разметку HTML в документ HTML или разметку Microsoft ® Word XML в документ Word, используйте mlreportgen.dom.RawText объект. Этот метод полезен для создания элементов HTML или Word, которые DOM API не поддерживает напрямую. В этом примере показано, как создать RawText объект для добавления разметки HTML.

import mlreportgen.dom.*;
d = Document('test','html');

append(d,RawText('<em>Emphasized Text</em>'));

close(d);
rptview('test','html');

Форматировать текст

Текст можно форматировать программно, используя объекты формата DOM или Text свойства формата объекта. Можно также использовать стили шаблонов. Сведения об этих методах форматирования и наследовании формата см. в разделе Подходы к форматированию отчетов.

Программно форматировать текст

Объекты форматирования можно использовать для форматирования Text объекты или свойства формата для указания часто используемых форматов текста. В этом примере используются:

  • A FontFamily форматировать объект для указания основного и резервного шрифтов

  • Bold свойство format для указания веса текста

import mlreportgen.dom.*;
d = Document('test','html');

t = append(d,'Bold Arial text');

fontFamily = FontFamily('Arial');
fontFamily.BackupFamilyNames = {'Helvetica'};
t.Style = {fontFamily};

t.Bold = true;         

close(d);
rptview(d.OutputPath);

Эти объекты форматирования и свойства форматирования используются для форматирования текста.

Форматирование Форматировать объектСвойство форматирования

Шрифт

FontFamily

FontFamilyName

Резервный шрифт (только HTML)

FontFamily

n/a

Сложный шрифт скрипта (например, арабский)

FontFamily

n/a

Восточноазиатский шрифт

FontFamily

n/a

Размер шрифта

FontSize

FontSize

Цвет переднего плана

Color

Color

Цвет фона

BackgroundColor

BackgroundColor

Смелый

Bold

Bold

Курсивный

Italic

Italic

Нижний или верхний индекс

VerticalAlign

n/a

Пробить

Strike

Strike

Тип подчеркивания (одинарный, двойной и т.д.)

Underline

Underline

Цвет подчеркивания

Underline

n/a

Сохранение пробела

WhiteSpace

WhiteSpace

Отобразить как указано

Display

n/a

Форматирование текста с помощью таблиц стилей Microsoft Word

Можно отформатировать абзац с использованием стиля, определенного в шаблоне Word, используемом для создания отчета.

Чтобы определить текстовый стиль в шаблоне Word, сначала выполните следующие действия.

  1. Откройте шаблон Word, используемый вместе с отчетом.

  2. Откройте панель «Стили».

  3. Нажмите кнопку «Управление стилями».

  4. Щелкните Новый стиль (New Style).

  5. В диалоговом окне «Создание нового стиля из форматирования» задайте для параметра «Тип стиля» значение Character или Linked (paragraph and character).

Дополнительные сведения о работе со стилями Word см. в разделе Изменение стилей в шаблоне Microsoft Word.

Форматирование текста для HTML и PDF с использованием таблиц стилей

Текст можно форматировать с использованием стиля, определенного в шаблоне, используемом для создания отчета. Применение стиля шаблона к Text объект либо в качестве второго аргумента в Text конструктора объекта или путем установки StyleName к стилю шаблона.

Для определения стиля используйте синтаксис каскадной таблицы стилей (CSS). Используйте селектор на span для указания имени стиля. Этот CSS определяет стиль с именем Pass.

span.Pass {
  font-family: "Times New Roman", Times, serif;
  color: green;
}

В HTML-шаблонах можно использовать любые свойства и селекторы CSS. Для шаблонов PDF можно использовать подмножество свойств и селекторов CSS. См. раздел Изменение стилей в шаблонах PDF.

Применение стиля к текстовому объекту

Применение стиля шаблона к Text объект либо в качестве второго аргумента в Text конструктора объекта или путем установки StyleName к стилю шаблона. Предположим, что определены стили Body, Pass, и Fail в шаблоне для отчета. Затем можно применить стили.

import mlreportgen.dom.*;
passed = rand(1) >= 0.5;
rpt = Document('MyReport','html','MyTemplate');

t1 = Text('Test status: ');
t1.StyleName = 'Body';
t1.WhiteSpace = 'preserve';

if passed
  status = 'Passed';
  statusStyle = 'Pass';
else
  status = 'Failed';
  statusStyle = 'Fail';
end

t2 = Text(status,statusStyle);
statusPara = Paragraph(t1);
append(statusPara,t2);
append(rpt, statusPara);

close(rpt);
rptview(rpt.OutputPath);

Переопределить форматы шаблонов

Программные форматы можно использовать для переопределения форматов, определенных в стиле на основе шаблона. Предположим, что определен стиль с именем AlertLevel в шаблоне, устанавливающем зеленый цвет. Можно переопределить стиль в программе отчетов, чтобы задать цвет на основе текущего уровня аларма:

t = Text('Danger!','AlertLevel');
t.Color = 'red';

См. также

Классы

Связанные примеры

Подробнее