js调用数科阅读器_pdf.js实现在HTML下直接浏览pdf文档,无需插件即可实现

本文介绍了如何利用开源插件pdf.js在HTML环境下实现无需Flash且不依赖第三方转换的PDF文档预览。提供了简单Demo和相关代码解析,包括引入pdf.js库、解析PDF、设置HTML标签以及展示PDF文档的方法。此外,还分享了官方预览Demo的使用方式,并给出了技术交流群的信息。
摘要由CSDN通过智能技术生成

近期,有一个朋友做B端,服务器存了大量的金融类数据,很多都是pdf文档,他现在的做法是,先将pdf文档转换成flash,再放到浏览器上给用户浏览,但是他告诉我,这种体验太差了,而且很好资源,空间已经快不够了,向我咨询有没有可以直接读取pdf文档的,我之前也没做过,于是,我简单搜索了一下,还真是有,下面给大家整理出来,供大家参考。

pdf.js是一款开源的pdf文档读取解析插件,据说在HTML5下诞生的,对于主流的浏览器基本都支持。

官网GitHub地址如下:https://github.com/mozilla/pdf.js

由于官网项目文件过多,不太容易理解,因此,我自己针对此项目做了一个简单的Demo,Demo参考地址如下:

1.新窗口浏览pdf文档:http://www.51purse.com/pdf/web/viewer.html?name=b.pdf

2.点击连接读取第一页的pdf文档:http://www.51purse.com/pdf/web/demo1.html

3.点击连接,选择需要打开的文件,进行pdf预览:http://www.51purse.com/pdf/web/demo2.html

pdf.js主要包含两个库文件,一个pdf.js和一个pdf.worker.js,,一个负责API解析,一个负责核心解析

比如Demo1,点击连接,可在当前页面打开一个pdf文档,进行预览,代码剖析

1.引入pdf.js

2.解析读取pdf

functionshowPdf(){

PDFJS.workerSrc= '../build/pdf.worker.js';//加载核心库

PDFJS.getDocument(url).then(functiongetPdfHelloWorld(pdf) {//

//获取第一页数据//pdf.getPage(1).then(functiongetPageHelloWorld(page) {var scale = 1.5;var viewport =page.getViewport(scale);//

//Prepare canvas using PDF page dimensions//var canvas = document.getElementById('the-canvas');var context = canvas.getContext('2d');

canvas.height=viewport.height;

canvas.width=viewport.width;//

//Render PDF page into canvas context//var renderContext ={

canvasContext: context,

viewport: viewport

};

page.render(renderContext);

});

});

}

3.设置HTML标签

显示pdf文档

4.demo1是通过调用API自己解析,通常,我们直接使用官网的Demo,比如viewer.html,或者Demo2,官方已经为我们设置好了预览的皮肤和各种事件,因此,我只需要将官方的库引进去,会进行本地预览即可。

如果有人需要代码或者不明白的可以加入PDF群:707875596

作者:慕课讲师/河畔一角

前端基于Vue2.6/小程序/小程序云 + Node.js + MongoDB  全栈的微信支付、微信授权、微信好友/朋友圈分享等全栈课程,欢迎广大前端开发者购买观看

前端基于Vue2.0 + Node.js + MongoDB  全栈的慕课网课程,欢迎广大前端开发者购买观看

前端基于React16 + React-Router4.0 + Redux +AntD 慕课首门基于共享单车后台通用系统上线了,欢迎广大前端开发者观看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值