pdfjs-dist加载不全的解决方案

首先说版本问题,我用的2.1.226版本,会有长文章加载不全的问题,看了网上好多人说的,说是2.2.228版本的最稳定;
可以看https://www.cnblogs.com/baisong11/p/13731436.html

解决方案

方案一:修改源码

https://blog.csdn.net/s_y_w123/article/details/108869862

方案二:线上或本地资源包

https://www.cnblogs.com/KingJames/p/11763590.html

我的pdfjs-dist的版本是2.1.266.
最开始使用了线上的资源包,在本地测试的确实很好,没有任何问题,但是当没用外网的时候,此处的资源会找不见,然后报错。

const src = {
        url: url,
        httpHeaders: myHeader,
        withCredentials: true,
        cMapUrl: "https://cdn.jsdelivr.net/npm/pdfjs-dist@2.2.228/cmaps/",
        cMapPacked: true,
      }

此处提供cmaps的2个CDN地址(2.2.228为pdfjs-dist的版本号):
https://unpkg.com/browse/pdfjs-dist@2.2.228/cmaps/
https://cdn.jsdelivr.net/npm/pdfjs-dist@2.2.228/cmaps/

本地资源包,需要把资源包下载到本地(下载地址)。
pdfjs-dist加载不全的解决方案
下载下来是完整的包,只需要把cmaps引入到本地文件即可;放到public文件夹下。
pdfjs-dist加载不全的解决方案
然后从本地引入

const src = {
        url: url,
        httpHeaders: myHeader,
        withCredentials: true,
        cMapUrl:'./pdf/cmaps/',
        cMapPacked: true,
      }

这样在没有外网的情况下也可以正常加载了。

上一篇:pdfjs预览 vue中常见的坑及修改预览的标题名


下一篇:引入pdfjs-dist报错的问题