美文网首页vue系列uni
h5最简单预览pdf在线-新

h5最简单预览pdf在线-新

作者: litielongxx | 来源:发表于2023-03-07 14:58 被阅读0次

pdf预览,有的可能疑惑电脑直接打开就行。
其实i试下os上和pc展示没问题的,但安卓h5等基本是不行的。
手机端时会碰到直接打开pdf文件,而不是下载的需求.
同打开word文件一样·mammoth.browser.min.js一样用特殊插件pdfh5.js。
(docx为可解压格式,故doc则不支持)

image.png

1 cnpm install pdfh5.js

cnpm install pdfh5.js

cnpm同等yarn、安装node_modules包,其中自带示范

2 调整一下pdf.html

axios用不上的,可以注释掉。
js文件其实,自行识别了路径file,pdf.html?file=a.pdf。
默认优先获取浏览器地址栏?file=后面的地址,如果地址栏没有,再拿配置项的pdfurl或者data来渲染pdf。pdfh5实例初始化

image.png

3 下载pdf

xx.png

文档中https://www.gjtool.cn/pages/index/detail?id=640ec464e766bb2975382584
有提及download方法,但没生效换用其余方式了。
自行添加一个icon,点击时a链接方式下载。
小程序webview不支持直接下载,需要跳转小程序中使用单独方法。
只针对访问的h5页面,客户端同小程序。

// 样式 
 #down {
            overflow: hidden;
            position: fixed;
            right:15px;
            top:15px;
            z-index:999;
            width:45px;
            background: rgb(74 73 73 / 40%);
            border-radius: 50%;
   //   }

 $('.pageNum').append(`<img id="down" src="./xx/xx.png">`)

            $('#down').click(function(){
                fetch('下载地址').then(res => {
                //  *  响应一个promise 对象
                // 此处响应体的是一个 【ReadableStream】
                         // 将响应体转换为二进制流
                        res.blob().then(data=>{
                        // 生成一个domstring (临时地址),必须生成临时地址才能够被下载
                            saveImg(URL.createObjectURL(data), '下载标题')
                        })
                    })
            })

            function saveImg(url, filename) {
                var oA = document.createElement("a");
                oA.download = ''; // 设置下载的文件名,默认是'下载'
                oA.href = url;
                oA.download = filename; // 设置文件名
                document.body.appendChild(oA);
                oA.click();
                oA.remove(); // 下载之后把创建的元素删除
            }

相关文章

  • html中在线预览pdf文件之pdf在线预览插件

    html中在线预览pdf文件之pdf在线预览插件 最近遇到一个需求,要在html页面查看pdf生成的pdf文件! ...

  • uni-app pdf在线预览

    使用pdf.js在线预览pdf文件

  • ios 下载PDF预览

    最近项目遇到在线PDF预览功能,最开始是用的wkwebview进行预览的,但是不能左右翻页滑动,只能上下预览,只能...

  • 实现在线预览PDF的几种解决方案

    因客户需要实现PDF的预览处理,在网上找了一些PDF在线预览的解决方案,有的用PDFJS的在线预览方式,有的使用P...

  • java集成pdf.js实现pdf文件在线预览

    最近项目需要实现在线预览pdf文件功能,找来找去,发现有个pdf.js的类库挺好用,直接用js实现在线预览。pdf...

  • PDF在线预览

    需求 vue下的一个项目,通过点击事件在线预览pdf合同功能 需要用到的插件:base64: pdfjs-dist...

  • 在线预览pdf

    要求在HTML页面中打开PDF 解决方案采用第三方插件pdf.js,但是需要注意:pdf文件和HTML需要在同一个...

  • pdf.js的使用实例

    最近 vue项目要在移动端实现在线浏览pdf,所以想到用pdf.jspdf.js可以实现在线预览pdf文档,核心部...

  • 插件

    PDF预览工具在线地址:https://pdfobject.com/示例图用法:

  • vue-pdf查看pdf文件及打印乱码问题处理

    前言 vue中简单使用vue-pdf预览pdf文件,解决打印预览乱码问题 vue-pdf 使用 安装 npm in...

网友评论

    本文标题:h5最简单预览pdf在线-新

    本文链接:https://www.haomeiwen.com/subject/yucbldtx.html