用pdfjs-dist (2.5.207,预构建版本)实现前端预览pdf

528 阅读1分钟

内容原文截取地址:vue3项目中使用pdfjs-dist踩坑记录

官方git地址:github.com/mozilla/pdf…

直接下载该版本 image.png

vue项目,最好放到public下

代码如下:注意此时不能预览跨域文件

// 1. 直接在新窗口中打开
window.open(`/pdfjs-2.5.207-dist/web/viewer.html?file=${pdfurl}`, '_blank')


2.  使用iframe
   <iframe id="iframe_div"></iframe>
   
   
    const iframe = document.getElementById("iframe_div")
    iframe.src = `/pdfjs-2.5.207-dist/web/viewer.html?file=${fileURL1}`
    
    
dpfjs会有缓存,所以下次打开同一个文件会很快,但是也会有上次打开的记录, 比如上次停留在的第五页,打开之后还是在第五页,   
如需解决,再打开之前清理缓存即可。

    //清理dpfjs缓存
    localStorage.removeItem("pdfjs.history")

效果 be like:

image.png

解决跨域:

  1. 前端在 pdfjs-2.5.207-dist/web/wiewer.js 中注释掉跨域相关代码,
  2. 需要后端同仁处理一下,才可以完美。

image.png