您好,我这边分析了您给的模板,
您应该对SpreadJS 打印机制有点小误解,
SpreadJS针对每张sheet表,都有一个printInfo实例,您可以针对每张表来调整其打印效果。
再调整好所有表的打印格式后,调用spread的print方法来打印单张或所有表格。
print方法在不传递任何参数的情况下,默认是打印所有sheet,如果您只想打印其中某一张sheet,
可以将sheet的index传入print方法。参考API:
http://help.grapecity.com/spread ... Workbook~print.html
我这边也做了一个示例,您可以在这个示例上进一步调整您打印的尺寸,代码如下:
- // 第一张表
- var sheet1 = spread.getSheet(0);
- // sheet1.printInfo().paperSize(A4);
- sheet1.printInfo().paperSize(new GC.Spread.Sheets.Print.PaperSize(800, 1200));
- // sheet1.printInfo().centering(GC.Spread.Sheets.Print.PrintCentering.both);
- sheet1.printInfo().margin({ top: 0, bottom: 0, left: 0, right: 0, header: 0, footer: 0 });
- sheet1.printInfo().orientation(GC.Spread.Sheets.Print.PrintPageOrientation.portrait);
- // sheet1.printInfo().orientation(GC.Spread.Sheets.Print.PrintPageOrientation.landscape);
- sheet1.printInfo().zoomFactor(1.0);
- // 第二张表
- var sheet2 = spread.getSheet(1);
- // sheet2.printInfo().paperSize(A4);
- sheet2.printInfo().paperSize(new GC.Spread.Sheets.Print.PaperSize(800, 1200));
- // sheet2.printInfo().centering(GC.Spread.Sheets.Print.PrintCentering.both);
- sheet2.printInfo().margin({ top: 0, bottom: 0, left: 0, right: 0, header: 0, footer: 0 });
- sheet2.printInfo().orientation(GC.Spread.Sheets.Print.PrintPageOrientation.portrait);
- // sheet2.printInfo().orientation(GC.Spread.Sheets.Print.PrintPageOrientation.landscape);
- sheet2.printInfo().zoomFactor(1.0);
- // 一起打印
- spread.print();
复制代码
效果图:
|