中心页面上的图像
这个例子展示了如何在景观中心图像页PDF和Microsoft®Word报告。
这个例子创建了一个API报告在景观布局和使用centerImage
本地函数添加图像在页面的中心。
创建报告
进口DOM API包和报告,所以你不需要使用长,完全限定类名。
进口mlreportgen.dom。*进口mlreportgen.report。*
创建一个PDF报告。创建一个Microsoft®Word报告,改变”pdf”
“多克斯”
。
rpt =报告(“myreport”,“pdf”);打开(rpt);
更新报告页面布局
创建一个页面布局对象。
如果strcmpi (rpt.Type“pdf”)pageLayoutObj = PDFPageLayout;其他的pageLayoutObj = DOCXPageLayout;结束
指定页面方向、高度和宽度。
pageLayoutObj.PageSize。取向=“景观”;pageLayoutObj.PageSize。身高=“8.5”;pageLayoutObj.PageSize。宽度=“11”;
指定页面的利润率。
pageLayoutObj.PageMargins。顶级=“0.5”;pageLayoutObj.PageMargins。底=“0.5”;pageLayoutObj.PageMargins。离开了=“0.5”;pageLayoutObj.PageMargins。正确的=“0.5”;pageLayoutObj.PageMargins。头=“0.3”;pageLayoutObj.PageMargins。页脚=“0.3”;
页面布局对象添加到报告。
add (rpt, pageLayoutObj);
添加图片
调用centerImage
本地函数添加图像在页面的中心。
centerImage ((“ngc6543a.jpg”),rpt);centerImage ((“peppers.png”),rpt);
生成报告
关闭并查看报告。
关闭(rpt);rptview (rpt);
的centerImage
本地函数
这个函数添加指定的图像在页面的中心在指定的报告。这个函数使用DOM图像
将图像文件和一个看不见的DOM表
的布局。
函数centerImage (imageFile rpt)
进口DOM API和报告生成器实用程序包,所以你不需要使用长,完全限定类名。
进口mlreportgen.dom。*进口mlreportgen.utils。*
得到这份报告的当前页面布局来确定当前页面大小和利润率。页面布局信息是用来计算页面体型以尺寸表在随后的步骤中创建的布局。
pageLayout = getReportLayout (rpt);页大小= pageLayout.PageSize;pageMargins = pageLayout.PageMargins;
身体宽度计算页面。页面体宽度表示的内容和可用的页面宽度是由减去左边和右边距大小的页面宽度。多克斯输出,排水沟的大小也需要减去。
bodyWidth = units.toInches (pageSize.Width)…units.toInches (pageMargins.Left)…units.toInches (pageMargins.Right);如果strcmpi (rpt.Type“多克斯”)bodyWidth = bodyWidth -…units.toInches (pageMargins.Gutter);结束bodyWidth = sprintf (“% 0.2鳍”,bodyWidth);
身体高度计算页面。页面主体高度表示页面高度可用的内容和是由减去从页面顶部和底部边缘尺寸高度。PDF输出,页眉和页脚的尺寸还需要减去因为身体从头部的底部延伸到顶部的页脚。
bodyHeight = units.toInches (pageSize.Height)…units.toInches (pageMargins.Top)…units.toInches (pageMargins.Bottom);如果strcmpi (rpt.Type“pdf”)bodyHeight = bodyHeight -…units.toInches (pageMargins.Header)…units.toInches (pageMargins.Footer);结束bodyHeight = sprintf (“% 0.2鳍”,bodyHeight);
创建一个图像
对象缠绕在图像文件。图像以适应规模布局表的条目在随后的步骤中创建的。
形象=形象(imageFile);的形象。风格=[形象。风格{ScaleToFit}];
包装在一个段落的形象因为PDF要求图像驻留在一个段落中。更新的段落样式,以确保没有空白的形象。
帕拉=段(图片);帕拉。风格=[帕拉。风格{OuterMargin (“0”,“0”,“0”,“0”)});
添加段落包含图像1×1无形的布局表(lo_table
)。一个表时被认为是无形的边界并不表定义及其表条目。
lo_table =表({para});
跨表可用页面体宽度。
lo_table。宽度=bodyWidth;
跨度唯一可用的表条目页面身体高度。同时,指定垂直和水平对齐格式,以确保图像垂直和水平地集中在表条目。
lo_table。表EntriesStyle = [lo_table.TableEntriesStyle…{…高度(bodyHeight),…HAlign (“中心”),…VAlign (“中间”)…});
布局表添加到报告。
add (rpt, lo_table);结束
另请参阅
mlreportgen.report.Report
|mlreportgen.dom.PDFPageLayout
|mlreportgen.dom.DOCXPageLayout
|getReportLayout
|mlreportgen.utils.units
|mlreportgen.dom.Image
|mlreportgen.dom.Table