位置: IT常识 - 正文

Vue3 + PDF.js 实现 PDF 预览(vue实现pdf下载)

编辑:rootadmin
Vue3 + PDF.js 实现 PDF 预览 文章目录1 前言2 PDF 预览测试2.1 下载 PDF.js2.2 window.open 直接打开2.3 弹框形式打开3 修改配置项3.1 修改主题色为暗色系3.2 修改默认语言为简体中文3.3 打开 PDF 后默认跳转到某一页4 移除部分按钮4.1 简单按钮移除4.2 复杂按钮移除5 错误处理5.1 跨域报错5.2 默认语言为简体中文,但下载按钮仍显示为“Save”1 前言

推荐整理分享Vue3 + PDF.js 实现 PDF 预览(vue实现pdf下载),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue pdf教程,vue-pdf,vue使用pdf.js,vue.js pdf下载,vue-pdf,vue使用pdf.js,vue3.0 pdf,vue3.0 pdf,内容如对您有帮助,希望把文章链接给更多的朋友!

PDF.js 官网

本文使用的 PDF.js 版本为:v3.0.279本文未使用 npm 形式在项目中引入 PDF.js 依赖,因为该形式引入的 PDF.js 需要自己写额外页面样式及按钮,而直接在官网下载可以使用 PDF.js 默认提供的 viewer ,不用再增加额外代码,即可实现 PDF 预览等功能# 使用 npm 形式在项目中引入 PDF.js 依赖npm i pdfjs-dist效果预览 2 PDF 预览测试2.1 下载 PDF.js

在 PDF.js 官网下载 PDF.js ,解压后放到 public/static 下

2.2 window.open 直接打开// 默认打开 public/static/pdf/web/compressed.tracemonkey-pldi-09.pdf// 测试 pdf 有点大,第一次打开可能会有点慢,只要有进度条就是正常加载中window.open('static/pdf/web/viewer.html')// 传入 pdf 文件地址const fileUrl = 'xxx'window.open('static/pdf/web/viewer.html?file=' + fileUrl)2.3 弹框形式打开<el-dialog v-model="dialogVisible"> <iframe :src="'static/pdf/web/viewer.html?file=' + fileUrl" style="width: 100%; height: 440px" ></iframe></el-dialog>3 修改配置项3.1 修改主题色为暗色系Vue3 + PDF.js 实现 PDF 预览(vue实现pdf下载)

修改 public/static/pdf/web/viewer.js

AUTOMATIC: 0, // 跟随浏览器LIGHT: 1, // 亮色DARK: 2 // 暗色

3.2 修改默认语言为简体中文

修改 public/static/pdf/web/viewer.js

3.3 打开 PDF 后默认跳转到某一页// 添加 #page=2 默认跳转到第二页window.open('static/pdf/web/viewer.html?file=' + fileUrl + '#page=2')4 移除部分按钮4.1 简单按钮移除

例:移除[打印]按钮

4.2 复杂按钮移除

例:移除[文本]按钮,由于该按钮点击后会出现面板,所以除了移除当前按钮相关代码外,还要移除面板相关代码

5 错误处理5.1 跨域报错

注释 public/static/pdf/web/viewer.js 代码

5.2 默认语言为简体中文,但下载按钮仍显示为“Save”

修改 public/static/pdf/web/viewer.html 第159、276行代码

本文链接地址:https://www.jiuchutong.com/zhishi/288808.html 转载请保留说明!

上一篇:温特弗灵附近的费灵加湖,德国巴伐利亚 (© Westend61/Getty Images)(温特孚灯具质量怎么样)

下一篇:pytorch :OSError: [WinError 1455] 页面文件太小,无法完成操作。 Error loading 【已解决】

  • Redmi K40建议升级到MIUI 12.5稳定版吗(红米k40能不能升级miui12.5)

  • 苹果13关机键在哪里(苹果关机键在上面)

  • 苹果13可以分屏操作吗(苹果13可以分屏聊天吗)

  • 华为手环6pro怎么设置nfc(华为手环6PRO怎么刷机)

  • 支付宝小猪存钱罐怎么取出来(支付宝小猪存钱罐有收益吗)

  • 饿了么一直没有骑手接单怎么办(饿了么一直没有骑手怎么办)

  • 真我是oppo旗下的嘛(真我是oppo的牌子吗)

  • 手机qq共享屏幕对方听不到声音(手机qq共享屏幕看电影对方听不到声音)

  • 手机进水竖纹会自动消失吗(手机进水竖条纹)

  • 至强e52690相当于i几(至强e52690参数)

  • 退货地址和卖家发的不是一个(退货地址和卖家发的不是一个拼多多)

  • 微信可以看共同好友吗(微信可以看共同关注公众号的好友吗)

  • 中国电信hd图标什么意思(中国电信hd图标怎么取消掉)

  • 淘宝订单延长收货几天(淘宝订单延长收货可以几次)

  • boss账号如何解封成功(boss账号被锁了怎么办)

  • 闲鱼被永久禁言怎么办(闲鱼被永久禁言注销了从新注册可以吗)

  • 苹果x像素多少万(苹果14像素多少)

  • ie浏览器的页面设置在哪(ie浏览器的页面设置功能在哪里)

  • 文件保险箱的文件在哪(文件保险箱文件修改后存不回去)

  • 华为nxtcl00什么型号

  • cad怎么按长度画线(cad按长度画线)

  • 如何删除pr里面的项目(pr怎么删除不想要的部分)

  • 运动步数怎么刷(这么刷步数)

  • 详解Linux中用于查询用户信息的finger和chfn命令(linux用途是什么)

  • 超全人工智能 AI工具导航网站合集(人工智能agi)

  • uniapp、微信小程序播放flv直播流视频(uniapp微信小程序兼容)

  • 设计模式---代理模式(设计模式代理模式)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络