创建和格式化段落
创建段落
您可以使用带有字符向量的 mlreportgen.dom.Paragraph 构造函数来创建段落。例如:
p = Paragraph("Text for a paragraph");
您还可以在 Paragraph 对象构造函数中指定这些 DOM 对象。
mlreportgen.dom.Textmlreportgen.dom.ExternalLinkmlreportgen.dom.InternalLinkmlreportgen.dom.LinkTargetmlreportgen.dom.Image
创建标题
标题是段落的一种类型。您可以使用 mlreportgen.dom.Heading1、Heading2 等来创建标题。或者,如果您想使用以编程方式派生的值作为标题级别,则可以使用 mlreportgen.dom.Heading 对象。
此示例使用文本 Chapter 1: System Overview 创建一级标题。如果您创建目录,此标题将出现在顶层。
h1 = Heading1("Chapter 1: System Overview");段落格式
您可以使用 DOM 格式对象或格式属性来格式化段落。您还可以使用模板样式。有关这些格式化技术和格式继承的信息,请参阅 报告格式化方法。
注意
您可以对标题对象(Heading 和 Heading1、Heading2 等等)使用与 Paragraph 对象相同的格式对象和属性。
通过编程设置段落格式
您可以使用 DOM API 格式对象来格式化 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);
使用这些对象和属性来格式化段落。
| 格式化 | 格式化对象 | 格式属性 |
|---|---|---|
字体 |
|
|
备选字体(仅限 HTML) |
| 不适用 |
复杂字体(例如阿拉伯语) |
| 不适用 |
东亚字体 |
| 不适用 |
字体大小 |
|
|
前景颜色 |
|
|
背景色 |
|
|
粗体 |
|
|
斜体 |
|
|
下标或上标 |
| 不适用 |
删除线 |
|
|
下划线类型 |
|
|
下划线颜色 |
| 不适用 |
在段落周围创建边框 |
| 不适用 |
保留空白 |
|
|
缩进段落 |
|
|
段落首行缩进 |
|
|
悬挂缩进 |
| 不适用 |
段前段后空格 |
| 不适用 |
段落右侧的空格 |
| 不适用 |
段落与其边界框之间的间距 |
| 不适用 |
段落行之间的间距 |
| 不适用 |
段落左对齐、居中对齐、右对齐 |
|
|
从下一页开始段落 |
| 不适用 |
保留下一段 |
| 不适用 |
保持段落在同一页上 |
| 不适用 |
消除多出的孤行 |
| 不适用 |
目录段落级别 |
|
|
按指定显示 |
| 不适用 |
使用模板样式设置 Microsoft Word 的段落格式
您可以使用 Word 模板中的样式来设置段落的格式。您可以向模板添加样式或修改现有样式。
要添加段落样式:
打开报告使用的 Word 模板。
打开样式窗格。
点击管理样式按钮
。点击新建样式。
在根据格式创建新样式对话框中,将样式类型设置为字符或链接段落和字符。
根据需要格式化样式。
有关使用 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;
}
您可以在 HTML 模板中使用任何 CSS 属性和选择器。对于 PDF 模板,您可以使用 CSS 属性和选择器的子集。请参阅修改 PDF 模板中的样式。
有关将 HTML 样式与 DOM 对象结合使用的详细信息,请参阅 修改 HTML 模板中的样式。
将样式应用于段落对象
将模板样式应用于 Paragraph 对象,作为 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);
覆盖模板格式
您可以使用编程格式来覆盖基于模板的段落样式中定义的段落格式。假设您在 Word 模板中定义一个名为 BodyPara 的段落样式,并将 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);
另请参阅
类
mlreportgen.dom.Paragraph|mlreportgen.dom.Text|mlreportgen.dom.FontFamily|mlreportgen.dom.FontSize|mlreportgen.dom.Bold|mlreportgen.dom.Italic|mlreportgen.dom.Underline|mlreportgen.dom.Strike|mlreportgen.dom.KeepLinesTogether|mlreportgen.dom.KeepWithNext|mlreportgen.dom.PageBreakBefore|mlreportgen.dom.LineSpacing|mlreportgen.dom.Display