Main Content

本页采用了机器翻译。点击此处可查看英文原文。

在报告中创建内联方程

此示例显示如何在报告的一行文本中插入方程。例如:

您可以通过设置公式报告器的 DisplayInline 属性来指示公式是独占一行还是与相邻文本在同一行。如果将 DisplayInline 属性设置为 false,则报告器会在报告的单独行上添加格式化方程的图像。如果将 DisplayInline 属性设置为 true,则可以通过调用 getImpl 方法获取格式化公式的图像,并将该图像添加到报告中的段落中。

导入 API 包

导入 DOM 和报告 API 包,这样您就不必使用长而完全限定的类名。

import mlreportgen.report.* 
import mlreportgen.dom.* 

创建报告

此示例创建单文件 HTML 报 告。要创建不同类型的报告,请将输出类型更改为 "html""pdf""docx"。创建一个段落来包含该等式。

rpt = Report("myreport","html-file");
p = Paragraph("Here is an inline equation: ");
p.FontSize = "14pt";
p.WhiteSpace = "preserve";

为内联方程创建方程报告器

创建一个 Equation 报告器。通过将 DisplayInline 属性设置为 true 来指定方程的图像与相邻文本一致。

eq = Equation("\int_{0}^{2} x^2\sin(x) dx");
eq.DisplayInline = true;
eq.FontSize = 14;

将方程图像添加到报告

要获取格式化方程的快照图像,请调用 getImpl 方法。通过指定图像距离文本基线的降低量,将方程被积函数的基线与文本的基线对齐。尝试不同的数量直到您对对齐满意为止。对于 HTML 和 PDF 报 告,您可以将数量指定为行高的百分比。对于 Word 报 告,请将数量指定为单位数。请参阅 mlreportgen.dom.VerticalAlign 类的 Value 属性。

eqImg = getImpl(eq,rpt);
if (rpt.Type == "html" || rpt.Type == "html-file" || rpt.Type == "pdf")
    eqImg.Style = {VerticalAlign("-30%")};
elseif(rpt.Type == "docx") 
    eqImg.Style = {VerticalAlign("-5pt")};
end

将图像添加到段落中。将该段落添加到报告中。

append(p,eqImg);
add(rpt,p);

关闭并查看报告

close(rpt);
rptview(rpt);

另请参阅

| |

相关主题