背景:最近开发中有一份电子协议pdf签署的问题,因为pdf文件是合作方生成的,这里面有套打的值,盲猜他们是word文档套值后生成的pdf,这就有一个问题,套值部分字体与原来的不一致,在项目中签署前有个预览,这样空协议预览肯定是不行的,简单跟了下源码,解决方案如下:
跟进去这个PDFJS里面是这样的:注意这两个参数cMapPacked这个是指向你所配的字体库
一般的话服务器或是本地常见的字体都有,但我这个比较坑,也不知道人家用的这个是什么中文字体
应该是某个中文字体,查了对应字体库里发现没有,这就简单了,两个办法:
1.找到这个字体下载下来扔到指定字体库即可
2.引用第三方字体库(记得要把cMapPacked置为true,为什么我就不说了很简单一眼看懂)
最后放一个前后效果图对比下,调整前:
调整后: