在很早之前就想实现一个pdf在线预览的功能,只是限于流量和对服务器性能要求较高作罢。现在本文将其中涉及的到关键技术共享给大家。
pdf.js 插件介绍
pdf.js可以实现在html下直接浏览pdf文档,是一款开源的pdf文档读取解析插件。官方地址:http://mozilla.github.io/pdf.js/
pdf.js主要包含两个库文件,一个pdf.js和一个pdf.worker.js,,一个负责API解析,一个负责核心解析。
下面是 pdf.js 插件结构图
pdf.js 制作 pdf文档在线阅读功能
首先我们需要将 pdf.js 从官网上下载下来。然后项目,在项目中放置一个待预览的pdf文档,同时将pdf.js 复制到项目中。新建一个index.html文件。内容如下:
<html> <head> <meta charset="UTF-8"> <title>:www.xttblog.com pdf在线预览</title> <style type="text/css"> .lightbox{ position: fixed; top: 0px; left: 0px; height: 100%; width: 100%; z-index: 7; opacity: 0.3; display: block; background-color: rgb(0, 0, 0); display: none; } .pop,iframe{ position: absolute; left: 50%; top:0; width: 893px; height: 100%; margin-left: -446.5px; z-index: 9; } </style> <script src="Scripts/pdf.js" type="text/javascript"></script> <script type="text/javascript"> function showPdf(isShow) { var state = ""; if (isShow) { state = "block"; } else { state = "none"; } var pop = document.getElementById("pop"); pop.style.display = state; var lightbox = document.getElementById("lightbox"); lightbox.style.display = state; } function close() { showPdf(false); } </script> </head> <body> <ul> <li><a href="Scripts/jQuery经典入门教程(绝对详细).pdf" target="pdfContainer" onclick="showPdf(true)">0001_pdf</a></li> </ul> <div class="lightbox" id="lightbox"></div> <div id="pop" class="pop" style="display: none;"> <a href="javascript:close()" style=" position: absolute; right: -90px; display: inline-block; width: 80px; height: 30px; " id="close">关闭</a> <iframe src="" frameborder="0" id="pdfContainer" name="pdfContainer"></iframe> </div> </body> </html>
项目结构如下图所示:
项目运行效果
点击查看运行效果:http://mozilla.github.io/pdf.js/web/viewer.html
注意:如果遇到无法阅读的情况,请按下图操作。
: » 详解 使用pdf.js 插件实现pdf文档在线浏览功能
原创文章,作者:1402239773,如若转载,请注明出处:https://blog.ytso.com/tech/aiops/251205.html