Создайте и форматирование абзацев

Создайте абзац

Можно создать абзац при помощи конструктора mlreportgen.dom.Paragraph с вектором символов. Например:

p = Paragraph('Text for a paragraph');

Можно также задать эти Объекты DOM в конструкторе Object Paragraph.

  • mlreportgen.dom.Text

  • mlreportgen.dom.ExternalLink

  • mlreportgen.dom.InternalLink

  • mlreportgen.dom.LinkTarget

  • mlreportgen.dom.Image

Создайте заголовок

Заголовок является типом абзаца. Можно использовать mlreportgen.dom.Heading1, Heading2, и так далее, чтобы создать заголовки. Также можно использовать объект mlreportgen.dom.Heading, если вы хотите использовать программно полученные значения для направляющегося уровня.

Этот пример создает заголовок первого уровня с текстом Chapter 1: System Overview. Если вы создаете оглавление, этот заголовок появляется в верхнем уровне.

h1 = Heading1('Chapter 1: System Overview');

Отформатируйте абзац

Можно отформатировать абзац с помощью объектов формата DOM или свойств формата. Можно также использовать стили шаблонов. Для получения информации об этих методах форматирования и наследовании формата, см. Отчет Форматировать Подходы.

Примечание

Можно использовать те же объекты формата и свойства для заголовка объектов (Heading и Heading1, Heading2, и так далее), как вы делаете для объектов Paragraph.

Отформатируйте абзац программно

Можно использовать объекты формата API DOM, чтобы отформатировать объекты Paragraph или свойства формата, чтобы задать обычно используемые форматы абзаца. Этот пример использование:

  • Объект формата OuterMargin, чтобы задать поля для абзаца

  • Свойство формата HAlign, чтобы сосредоточить абзац

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

p = Paragraph('Indent a half inch and space after 12 points.');
p.Style = {OuterMargin('0.5in','0in','0in','12pt')};
append(d,p);

p = Paragraph('Centered paragraph');
p.HAlign = 'center';
append(d,p);

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

Используйте эти объекты и свойства отформатировать абзац.

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

Шрифт

FontFamily

FontFamilyName

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

FontFamily

нет данных

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

FontFamily

нет данных

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

FontFamily

нет данных

'FontSize'

FontSize

FontSize

ForegroundColor

Color

Color

BackgroundColor

BackgroundColor

BackgroundColor

Полужирный

Bold

Bold

Курсив

Italic

Italic

Индекс или верхний индекс

VerticalAlign

нет данных

Перечеркнуть

Strike

Strike

Подчеркните тип

Underline

Underline

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

Underline

нет данных

Создайте границу вокруг абзаца

Border

нет данных

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

WhiteSpace

WhiteSpace

Расположите абзац с отступом

OuterMargin

OuterLeftMargin

Отступ первая строка абзаца

FirstLineIndent

FirstLineIndent

Выступ

FirstLineIndent

нет данных

Пробел до и после абзаца

OuterMargin

нет данных

Пробел направо от абзаца

OuterMargin

нет данных

Пробел между абзацем и его ограничительной рамкой

InnerMargin

нет данных

Пробел между строками абзаца

LineSpacing

нет данных

Выровняйте по левому краю абзац, центр, право

HAlign

HAlign

Запустите абзац на следующей странице

PageBreakBefore

нет данных

Сохраните со следующим абзацем

KeepWithNext

нет данных

Сохраните абзац на той же странице

KeepLinesTogether

нет данных

Устраните висячие строки и висячие строки

WidowOrphanControl

нет данных

Уровень оглавления абзаца

OutlineLevel

OutlineLevel

Отображение, как задано

Display

нет данных

Форматирование абзацев для Microsoft Word Используя стили шаблонов

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

Добавить стиль абзаца:

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

  2. Откройте панель Styles.

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

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

  5. В диалоговом окне Create New Style from Formatting, набор Style type к Character или Linked (paragraph and character).

  6. Отформатируйте стиль по мере необходимости.

Для получения дополнительной информации о работе со стилями Word, смотрите, Изменяют Стили в Шаблоне Microsoft Word.

Форматирование абзацев Используя PDF или стили шаблона HTML

Можно отформатировать абзац с помощью стиля в HTML или таблицы стилей PDF в шаблоне. Можно добавить стили в шаблон или изменить существующие единицы.

Задайте стиль с помощью селектора на элементе p. Этот пример задает стиль абзаца BodyPara.

p.BodyPara {
  font-family: "Times New Roman", Times, serif;
  font-style: normal;
  font-size: 11pt;
  color: black;
  margin-left: 0.5in;
}

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

Для получения дополнительной информации об использовании стилей HTML с Объектами DOM смотрите, Изменяют Стили в Шаблонах HTML.

Примените стиль к объекту абзаца

Примените стиль шаблонов к объекту Paragraph или в качестве второго аргумента в конструкторе Object Paragraph или путем установки свойства StyleName в абзаце к стилю шаблонов.

Предположим, что вы задали стили под названием BodyPara и MyTitle в шаблоне. Этот пример сначала задает имя стиля в конструкторе Paragraph. Это затем задает стиль в объекте Paragraph свойство формата StyleName. Этот пример принимает, что оба стиля заданы в MyTemplate.

import mlreportgen.dom.*;
rpt = Document('MyReport','html','MyTemplate');

% Specify style name using an argument when you create the Paragraph
p = Paragraph('Format this paragraph using a body style.','BodyPara');
append(rpt,p);

p = Paragraph('This paragraph is formatted using a title style.');

% Specify  style name using a property on the paragraph
p.StyleName = 'MyTitle';
append(rpt,p);

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

Замените форматы шаблона

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

import mlreportgen.dom.*;
rpt = Document('MyReport','docx','MyTemplate');

p = Paragraph('Keep this body paragraph with next.','BodyPara');
p.Style = {'KeepWithNext'};
append(rpt,p);

p = Paragraph('Next paragraph.');
append(rpt, p);

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

Смотрите также

Классы

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

Больше о