背景:SpreadJS 中的打印可以通过设置进行自定制的页面调整,新上手的用户常常要问的问题就是我如何把表单的内容打印到一页A4纸上呢?
以下的示例代码不一定保证对所有的表单打印都会打印到一个A4纸上,仅做参考,说明如何进行打印设置,实际情况中可以根据具体的表单再做调整。
核心代码:
- var sheet = spread.getActiveSheet();
- var printInfo = sheet.printInfo();
- //打印设置纸张设置为A4
- printInfo.paperSize(new GC.Spread.Sheets.Print.PaperSize(GC.Spread.Sheets.Print.PaperKind.a4));
- // 纸张设置为其他尺寸
- // printInfo.paperSize(new GC.Spread.Sheets.Print.PaperSize(950,1350));
- // 设置页边距
- printInfo.margin({ top: 10, bottom: 0, left: 0, right: 0, header: 0, footer: 0 });
- //是否打印控件的外边框
- printInfo.showBorder(false);
- //是否打印网格线(默认打印)
- printInfo.showGridLine(false);
- // printInfo.headerCenter("&\ "Comic Sans MS"System Information ");
- // printInfo.footerCenter("&P/&N/&F ");
- printInfo.zoomFactor(0.99);//缩放
- printInfo.qualityFactor(5);//打印的质量因子
- printInfo.orientation(GC.Spread.Sheets.Print.PrintPageOrientation.landscape);//打印的页面方向。portrait纵 landscape
- printInfo.centering(GC.Spread.Sheets.Print.PrintCentering.horizontal);//打印页面的居中方式。
- printInfo.showColumnHeader(GC.Spread.Sheets.Print.PrintVisibilityType.hide);//获取或设置是否打印列标题。
- printInfo.showRowHeader(GC.Spread.Sheets.Print.PrintVisibilityType.hide);
- //设置是否以黑白打印
- printInfo.blackAndWhite(false);
- // 给每个表单循环设置printInfo
- for (var i = 0; i < spread.getSheetCount(); i++) {
- spread.sheets[i].printInfo(printInfo);
- }
复制代码 导出PDF也是一样,可以给表单设置printInfo 来调整导出PDF的大小。
另外附上一篇超详细打印设置博客:SpreadJS 打印相关知识总结
|
|