Vue中使用pdfJs预览PDF、图片

pdf.js是一个使用HTML5构建的可移植文档格式库。它可以帮助我们在浏览器中构建pdf文档,实现在线查看pdf文件的功能。

实现步骤如下:

1.下载pdfJs到本地(官网下载地址),放到项目根目录下的静态资源目录static文件夹内,将文件命名为pdfJs。

如下图

  1. 使用iframe打开
<iframe id="pdfPlayer" src="URL"  frameborder="0" width="100%" height="600px"></iframe>

或者

<iframe id="pdfPlayer" :src="pdfUrl" frameborder="0" width="100%" height="600px"></iframe>

需要注意的是:

file参数中默认只允许传简单路径比如:http://www.aaa.com/bb.pdf.

如果你要浏览的pdf路径需要传参数的话。 这时候直接传入的话会解析出错, 因为pdf.js无法判断参数是viewer.html的参数呢还是aa.pdf的参数。

viewer.html的参数呢还是aa.pdf的参数。

所以,URL 必须进行encode编码 ,encodeURIComponent() 把字符串编码为 URI 组件。

Vue中使用pdfJs预览PDF、图片相关推荐

  1. 移动端H5+vue使用vue-pdf在线预览PDF

    需求是点击查看收据按钮,进入新页面直接显示收据,可以放大.缩小.旋转.下载,没有分页 1.安装 npm i vue-pdf --save 2.使用 <template><div &g ...

  2. 如何在vue中实现文件预览功能

    文件流 如何将各种文件的文件流(blob)转化为线上可以直接预览的数据,这里简单介绍四种不同类型的文件预览.分别是pdf,docx,xlsx,jpg/png/jpeg等.有一个事情是需要重点注意的,文 ...

  3. pdfjs预览pdf报错

    跳转之后的页面已经可以出来,blob生成的链接也是有返回的,但是预览是空白,并且控制台警告:Warning: Invalid stream: "FormatError: Bad FCHECK ...

  4. vue 手机移动端预览pdf

    最新需求是在手机实现pdf的预览,最终采用的是pdfh5,可以保存为图片,比较方便 首先pdf返回的是pdf文件流 接收pdf文件流的时候需要设定文件类型responseType: 'arraybuf ...

  5. 前端(vue)js在线预览PDF、Word、Excel、ppt等office文件

    js解決 window.open("https://view.xdocin.com/view?src=" + encodeURIComponent(url) + '&too ...

  6. Vue项目实现在线预览pdf,并且可以批量打印pdf

    最近遇到一个需求,就是要在页面上呈现pdf内容,并且还能用打印机批量打印pdf,最终效果如下: 当用户在列表页面,勾选中两条数据后,点击"打印表单"按钮之后,会跳到如下的预览页面: ...

  7. 若依后端实现pdfjs预览PDF文件

    PDF.js用于解析和呈现PDF 的通用.基于 Web 标准的平台. 官网地址:http://mozilla.github.io/pdf.js/ 目录 一.下载pdfjs安装包 (1)官网下载 (2) ...

  8. 通过将文件流放入response中实现在线预览pdf文件

    public void getHealthReacordById(Long id, HttpServletResponse response) throws UnsupportedEncodingEx ...

  9. vue中 裁剪,预览,上传图片 的插件

    参考地址: https://github.com/dai-siki/vue-image-crop-upload 转载于:https://www.cnblogs.com/VaeVae/p/1028746 ...

最新文章

  1. 小松卡特彼勒无人驾驶_运输量突破20亿吨,卡特彼勒无人驾驶矿卡迎里程碑时刻...
  2. 揭秘码云:全球第二大代码托管平台的核心架构
  3. 关于Redis的数据迁移(三种方法)
  4. Java Set接口
  5. 【学习】Android开入门教程
  6. 概率机器人总结——占用栅格地图先实践再推导
  7. php只显示一部分文章,typecho同一个页面下调用不同分类的文章但是却只显示一个分类文章...
  8. WCF(四) 绑定
  9. OpenCV版本与EmguCV版本匹配问题
  10. MyBatis配置使用
  11. mac foxmail html签名,Foxmail for mac邮箱账号添加设置图文教程
  12. 用Ultra-Light-Fast-Generic-Face-Detector-1MB寻找人眼
  13. PHP 26个英文字母递增
  14. 原生js实现贪食蛇小游戏
  15. 电力公司SMS短信群发平台的设计与实现
  16. 8xmax升级鸿蒙,配置设计各种寒酸:Redmi10X开箱
  17. 定制合成彩色光刻胶(黑色负性i-line光刻胶;红色、蓝色、黄色、紫色、绿色、黑色)
  18. 大数据时代的 3V + 3高
  19. 中国历届亚运会成绩排名(金牌数)
  20. 举个栗子!Tableau 技巧(202):用参数为图表设置开关按钮

热门文章

  1. 使用高德地图API实现历史轨迹查询
  2. thinkphp + 腾讯云名片识别
  3. Windows 2D 绘图 (GDI, GDI+, Direct2D)
  4. 单变量微积分重点(2)
  5. android banner指示器高度,Android 广告轮播 -ConvenientBanner 指示器大小、bottomMargin,leftMarfin的修改。...
  6. 删除文件夹时,报错“错误ox80070091:目录不是空的”,该如何解决?
  7. 大学计算机基础 教材建设,《大学计算机基础》课程建设与教材编写.pdf
  8. 数据库---学生选课查询案例---经典查询题
  9. Win7下安装Mysql5.7.26
  10. 大数据时代最全的医学公共数据库合集整理