找回密码
 立即注册

QQ登录

只需一步,快速开始

Fiooona
论坛元老   /  发表于:2019-4-10 19:19  /   查看:5803  /  回复:0
本帖最后由 Fiooona 于 2019-4-15 10:21 编辑

导入导出Excel
SpreadJS支持导入导出Excel,须引用js文件:gc.spread.excelio.x.xx.xxxxx.x.min.js ,File.Saver.js
使用open,save方法可以导入或导出的Excel,文件如带密码,可传入参数options{password:xxx},如下图所示,点击选择文件,选择要导入的Excel,点导入按钮可以导入该Excel:
image.png105320128.png
image.png961358337.png
点击导出按钮,可以导出导出Excel,在密码框中输入密码可以导出带密码保护的Excel:
image.png192392272.png
打印:
若要使用SpreadJS打印功能同样需要引入js文件:gc.spread.sheets.print.x.xx.xxxxx.x.min.js
用print()方法即可打印整个表单,行头、列头、纸张大小、网格线边框等等均可以自定制打印效果,以下是一个导入的Excel默认的打印样式:
image.png349980162.png
对一些参数设置之后的效果:

image.png246925658.png
打印常见问题:
打印常出现的问题是会有多余的空白页,大概率是因为纸张大小设置有问题,浏览器打印的纸张尺寸需要和设定的表单大小相匹配,打印A4纸时,表单大小最好这样设置:
  1. GC.Spread.Sheets.Print.PaperSize(GC.Spread.Sheets.Print.PaperKind.a4));
复制代码
并在浏览器的纸张尺寸中选择A4纸:
image.png959606018.png
导出PDF
导出PDF需要引入gc.spread.sheets.pdf.x.xx.xxxxx.x.min.js。
导出PDF可控制从第几行,第几列导出,截至导出到第几行、第几列,页眉页脚,是否显示行头列头。SpreadJS的PDF导出内置了14种字体,如超出这14种字体导出会出现乱码情况。点击例子种导出PDF,可导出PDF,如下图所示:
image.png275869139.png
image.png196289672.png
中文出现乱码的问题由于默认字体与注册的字体不一致,需设置为统一的字体。给sheet表单种设定默认字体为一个已注册的字体simkai,再导出时新输入的中文内容导出正常。有个疑问是,通过JSON导入的内容,可以改变字体嘛?
  1. var style = new GC.Spread.Sheets.Style();
  2.         style.font = "8pt simkai";
  3.         sheet.setDefaultStyle(style,GC.Spread.Sheets.SheetArea.viewport);
复制代码
导入JSON时忽略了样式后,导出的PDF如下图所示,仅剩中间行的中文还存在乱码问题。 image.png784313659.png

Excel_print_PDF.zip

4.05 KB, 下载次数: 406

导入导出Excel&打印

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部