这个例子展示了如何创建交替使用不同颜色的行或列的表。这些桌子被称为斑马条纹桌或带状桌。要在报表中创建斑马条纹表,可以在程序或模板中定义它。本节中的示例具有斑马条纹行。对斑马条纹列使用类似的技术。
报告生成器api支持以编程方式或使用Word或HTM万博1manbetxL模板创建斑马条纹表。不能使用PDF模板为斑马条纹表创建PDF报告。
这个程序创建一个8乘8的魔术方桌。它的行背景颜色在蓝色和白色之间交替,这有助于读取和求和行。该程序还包括格式化行高、表宽、边框和单元格条目的对齐方式。
进口mlreportgen.report。*进口mlreportgen.dom。*rpt =报告(“zebraTable”,“pdf”);maglen = 8;杂志=魔法(maglen);结核病=表(mag);设置交替行的颜色为I = 1:maglen r = tb.row(I);如果mod(i,2)==0 r.Style = {BackgroundColor(“lightsteelblue”)};其他的r.Style ={写成BackgroundColor (“白色”)};结束结束结核病。风格= {RowHeight (“0.3”), RowSep (“固体”), ColSep (“固体”)};结核病。宽度=“3”;结核病。TableEntriesVAlign =“中间”;结核病。TableEntriesHAlign =“中心”;结核病。边境=“单一”;添加(rpt,结核病)关闭(rpt) rptview (rpt)
这个示例展示了如何向定义斑马条纹表的Word模板添加表样式。使用模板模块化您的应用程序。您可以更新模板,而不是更新程序,因为这可能会引入bug。
1.打开Word模板。在本例中,模板文件为myrpt。您可以使用它来创建mlreportgen.report.Report.createTemplate(“myrpt”、“多克斯”)
.要打开Word模板文件,右键单击该文件,然后在菜单中单击“打开”。(如果直接单击该文件,将打开一个使用该模板的.doc文件。)
2.打开风格面板如图所示。
3.在样式窗格中,单击新风格按钮。
4.要定义表样式,请指定或选择字段值。要匹配程序化的斑马条纹表示例,设置以下字段以将这些特性应用到表和表行:
的名字——添加ZebraStripeTable
作为样式的名称。使用此样式名称指定程序中表使用的样式。
风格类型-表格
将格式应用于-即使联合行
色域(没有颜色)
-从下拉菜单中选择奇数条纹的颜色。
然后,设置这些字段,将这些额外的特性应用到整个表:
将格式应用于-整个表
对齐,居中对齐
边界,所有的边界
5.点击好吧保存新样式。
6.保存模板文件
7.在程序中,指定要使用的模板文件,然后,可以将新的斑马条纹样式应用于程序中的表。
rpt = mlreportgen.dom.Document (“myreport”,“多克斯”,“myrpt.dotx”);结核病=表();结核病。StyleName属性=“ZebraStripeTable”;
程序中使用的所有格式选项在Word中都不是可用的。对于此示例,若要匹配程序化示例,除了在Word模板中指定样式外,还必须在程序中指定行高和表宽。
结核病。风格= {RowHeight (“0.3”)};结核病。宽度=“3”;
这是使用Word模板的完整代码,myrpt.dotx
将一个魔方格式化为一个斑马条纹的表格。
进口mlreportgen.report。*进口mlreportgen.dom。*rpt = mlreportgen.report.Report (“myreport”,“多克斯”,“myrpt.dotx”);maglen = 8;杂志=魔法(maglen);结核病=表(mag);结核病。StyleName属性=“ZebraStripeTable”;结核病。风格= {RowHeight (“0.3”)};结核病。宽度=“3”;add (rpt, tb)关闭(rpt);rptview (rpt)
这个示例展示了如何向定义斑马条纹表的HTML模板添加表样式。使用模板模块化您的应用程序。您可以更新模板,而不是更新程序,因为这可能会引入bug。
1.如果您没有现有的HTML模板,请使用mlreportgen.report.Report.createTemplate(“myrpt”、“html”)
.在这个例子中,模板文件在一个压缩的模板包中,myrpt.htmtx
.
2.使用unzipTemplate(“myrpt.htmtx”)
解压缩模板,创建一个名为myrpt
,其中包含样式表和图像模板文件。
3.的样式表文件夹myrpt
文件夹中。打开root.css
文件在文本编辑器。
4.创建一个CSS规则,为HTML表元素定义样式名称ZebraStripeTable。要为ZebraStripeTable样式定义CSS规则,请将以下行添加到root.css
文件。背景色,#B0C4DE和#FFFFFF,分别是浅蓝色和白色。
/*整个表的设置*/表。ZebraStripeTable{ text-align: center; border: 1px solid black; border-collapse: collapse; width: 5in; height: 4in; } /* Settings for table body */ table.ZebraStripeTable td { padding: 0pt 0pt 0pt 0pt; vertical-align: middle; text-align: center; border: 1px solid black; border-collapse: collapse; } /* Zebra rows and colors */ tr:nth-child(even) { background-color: #B0C4DE } tr:nth-child(odd) { background-color: #FFFFFF }
5.保存root.css
文件。
6.使用zipTemplate(“myrpt”)
将模板文件压缩回myrpt.htmtx
模板包。
7.在程序中,指定ZebraStripedTable作为表的样式。
rpt = mlreportgen.report.Report (“myreport”,“html”,“myrpt.htmtx”);结核病=表();结核病。StyleName属性=“ZebraStripeTable”;
这是使用HTML模板的完整代码,myrpt.htmtx
将一个魔方格式化为一个斑马条纹的表格。
进口mlreportgen.report。*进口mlreportgen.dom。*rpt = mlreportgen.report.Report (“myreport”,“html”,“myrpt.htmtx”);maglen = 8;杂志=魔法(maglen);结核病=表(mag);结核病。StyleName属性=“ZebraStripeTable”;添加(rpt,结核病);关闭(rpt);rptview (rpt);