项目简介:
- 需要一个很长的html页面转成pdf输出(大概是要上150多页)
- 技术攻坚
项目方案:
- 这属于一个综合性质的报告,所以需要的页面很多
- 技术解决方案 共有四种
第一种 纯前端方法
jsPDF
1.网络上的代码基本上都是 一个大的canvas以A4的长进行切割,在这个项目中canvas崩了
2.因为页面过多导致canvas崩溃了
3.所以 我有这样的想法 对每个页面截图 然后转成canvas jsPDF中可以以一个个canvas来添加页面
这是目前的线上版本
第二种 java模板语言
poi-tl
- 这是java的方案 先进行模板替换然后转pdf
- 之后我会进行协调
第三种 用node
officegen和docxtemplater
- 类似java的解决方案 不过会更快 前端也可以写一下
office插件
- 在我没事的时候 公司大佬推荐了我office.js这东西 这是office官方出的api
- 这个文档我就看了两天 对新人来说 不是很友好
- 实现思路 这个插件可以进行的打包然后自动化运行 需要用node启动office然后就可以自动让office处理这个东西
项目实践
- 前端解决方案是没什么好说的
- 下面我说一下office插件解决方案
office插件里面最重要的是就是 搜索 和 异步
先搜索包含的特定字符串的内容然然后替换 在复制word的页面的时候需要用api自带的getOoml来获取信息
总结
- 对于学号英文 看office文档太痛苦了
本文正在参与「掘金 2021 春招闯关活动」, 点击查看 活动详情