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

Создание текста

Вы можете создать текст, добавив вектора символов к документу, абзацу, записи таблицы или элементу списка. Система 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 формат объекта, чтобы задать основной и резервный шрифт

  • The Bold формат для задания веса текста

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. Откройте панель Styles.

  3. Нажмите кнопку Manage Styles.

  4. Нажмите New Style.

  5. В диалоговом окне «Создание нового стиля из форматирования» установите для Style type значение 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;
}

Можно использовать любые свойства CSS и селекторы в HTML шаблонов. Для шаблонов 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';

См. также

Классы

Похожие примеры

Подробнее о

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