解决pdf.js无法完全显示pdf文件内容的问题

JavaScript016

解决pdf.js无法完全显示pdf文件内容的问题,第1张

一、遇到的问题 :预览pdf文件时,很多内容未显示。****

查看控制台,出现以下警告

二、跟踪源码,排查原因

从下图可以发现baseUrl取值为params.cMapUrl

找到调用WorkerTransport方法处:

该问题的原因是因为缺少了部分字体包,也可使用CDN方式加载字体包。

此处提供cmaps的2个CDN地址(2.2.228为pdfjs-dist的版本号):

https://unpkg.com/browse/[email protected]/cmaps/

https://cdn.jsdelivr.net/npm/[email protected]/cmaps/

加载字体包后,效果如下图(部分内容已打马赛克):

方法/步骤

一、PDF一般是图片扫描进去的,但也存在不同的字体,安装软件未必有该字体,那么就会显示不全,提示需要某个字体包才能正确显示此页面。单击确定将浏览器定向到从官网下载加载项。安装后重新打开。

请点击输入图片描述

二、我们直接去官网找到reader fontpacks,直接点击【Proceed to Download】下载即可,将FONTPACK双击安装。

请点击输入图片描述

请点击输入图片描述

请点击输入图片描述

三、选择【complete】点击【next】安装完毕。重新打开显示完全。

这是因为国外保留我们中文的黑体、宋体、楷体等比较少有,但是国外字体比较多,所以你本机安装阅读软件拷贝到其他电脑,未必有该字体,所以安装字体是不可避免的。安装好字体,基本上都能解决该问题。

请点击输入图片描述

请点击输入图片描述

请点击输入图片描述

请点击输入图片描述