格式化数字
默认情况下,DOM API 使用在报告中准确将数字表示为文本所需的最大位数。要控制用于表示数字的位数,请使用以下方法指定数字格式:
通过调用
mlreportgen.dom.setDefaultNumberFormat
函数设置默认数字格式。通过将数字表示为
mlreportgen.dom.Number
对象并在Number
对象的Style
属性中包含mlreportgen.dom.NumberFormat
对象来覆盖一个数字的默认格式。通过在代表元素的对象的
Style
属性中包含mlreportgen.dom.NumberFormat
对象,覆盖文档元素(例如段落、表格或列表)中所有数字的默认格式。
设置默认数字格式
要设置 DOM API 用于格式化数字数据的默认格式规范,请使用 mlreportgen.dom.setDefaultNumberFormat
函数。提供对 sprintf
有效并使用 %f
、%e
、%E
、%g
或 %G
运算符的格式规范。例如,此代码指定小数点后四位数字:
mlreportgen.dom.setDefaultNumberFormat("%0.4f");
mlreportgen.dom.Number
对象的数字。例如,此代码使用默认格式在报告中表示 pi
:import mlreportgen.dom.* setDefaultNumberFormat("%0.4f"); d = Document("myDoc","pdf"); append(d,Paragraph(pi)); close(d); rptview(d);
报告中,pi
生成为 3.1416
。
指定一个数字的格式
要指定一个数字的格式:
将数字表示为
mlreportgen.dom.Number
对象。在
mlreportgen.dom.NumberFormat
对象中指定数字格式,并将NumberFormat
对象包含在Number
对象的Style
属性中。
例如,此代码对 pi
的第一个实例使用默认数字格式,并覆盖 pi
的第二个实例的默认格式:
import mlreportgen.dom.* setDefaultNumberFormat("%0.4f"); d = Document("myDoc1","pdf"); p1 = Paragraph("pi with default format: "); append(p1,pi); append(d,p1); p2 = Paragraph("pi with number format: "); n = Number(pi); n.Style = {NumberFormat("%0.2f")}; append(p2,n); append(d,p2); close(d); rptview(d);
以下是报告中的数字:
指定段落、表格或列表的数字格式
您可以通过在代表文档元素的对象的 Style
属性中包含 mlreportgen.dom.NumberFormat
对象来指定文档元素(例如段落、表格或列表)中所有数字的数字格式。例如,此代码指定第一段中的数字使用默认格式,第二段中的数字小数点后有两位:
import mlreportgen.dom.* setDefaultNumberFormat("%0.4f"); d = Document("myDoc2","pdf"); p1 = Paragraph("pi with default format: "); append(p1,pi); append(d,p1); p2 = Paragraph("pi with paragraph format: "); p2.Style = {NumberFormat("%0.2f")}; append(p2,pi); append(d,p2); close(d); rptview(d);
以下是报告中的数字:
有关指定表中所有数字格式的示例,请参阅 表格中的数字格式。
另请参阅
sprintf
| mlreportgen.dom.getDefaultNumberFormat
| mlreportgen.dom.setDefaultNumberFormat
| mlreportgen.dom.Number
| mlreportgen.dom.NumberFormat