SMART datagrid v.1 > Reporting > Concepts

Back  Forward

Concepts.Print Dimension

1. Print Unit

通过PrintDimension数据类型,设置SMART datagrid格报表指定的位置和大小值。 可以通过下列表格中所列出的几个单位进行指定,而如果没有表明单位,就会被指定为pixel。 

如果不是pixel,就会根据全局常量html dpi值而在内部转换为pixel,并且html dpi的默认值为96。 可以通过PrintOptions,变更Dpi全局值。 

Table-1  打印尺寸单位
单位说明例题
ininches。转换为'值 x dpi'。'120in'
cmcentimeters。转换为'值 x 0.393701 dpi*'。'21.1cm'
mmmilliimeters。转换为'值 x 0.0393701 dpi*'。'211mm'
pxpixels。默认值。无需指定单位。'800px', 1200
Code -1
    var report = {
        pageHeader: {
            items: [{
                right: '1cm',
                text: 'SMART datagrid Inc'
            }]
        },
        ...
    };
    DLReport.preview(grdMain, report, data, {
        // PrintOptions
        papaerWidth: "180mm",
        paperHeight: "23.0cm",
        paperMaringTop: "0.3in",
        paperMarginBottom: "50px",
        paperMarginLeft: 43
        ...
    }, true);
2. Paper Size

可以说,在单纯的卷筒纸印刷(Web Printing)中,几乎没有JavaScript可以得知或控制的印刷信息。 特别是,因为基本上都无法知道打印机的纸张大小, 所以需要开发人员(或用户)直接设置已物理设置的印刷纸张大小、边距以及印刷方向等,才可以匹配所导出的元素大小与实际大小。 

在SMART datagrid格报表模块中,可以通过PrintOptions而设置这些内容, 并且设置信息将会传递至DLReport.preview函数。 

PrintOptions中, 纸张宽度高度已被默认设置为A4(210 X 297mm), 并且、 边距分别被设置为默认值15mm15mm12mm12mm。 另外,打印方向已被设置为PaperOrientation.PORTRAIT。 只有在这些值与物理打印机设置相匹配的情况下,打印文件中的各个元素的实际大小,才会与指定在报表模型中的大小相同。 

特别是,因为浏览器是通过缩放(Scaling)而处理页面调整, 所以即使在浏览器预览中,各个页面都显示正常,也不代表这是匹配实测的状态。 如果是需要注意尺寸的打印文件,就必须要用实际打印出来的文件而进行测量。 而且,根据经验,有可能会存在1mm左右的误差,所以如果是打印多个页面的情况,就可能会经历对特定打印机的一定试错。 

See Also
PrintOptions
PrintItem
preview
Examples
Hello Report