pdf.js是在线预览PDF的一款神器。 在电脑上,一般直接提供pdf文件,iframe一下就可以直接预览了。移动端ios上也可以直接预览,而在安卓手机上会跳转到下载文件的页面,而无法在线预览文件(为什么会发生这种问题?原因是安卓微信浏览器内核是QQ浏览器的X5内容,如检测文件流就会下载它,而不是打开如果想要逆天而行就继续往下看吧==),我们就可以使用这个插件的解决相关问题。

官方示例:http://mozilla.github.io/pdf.js/examples/index.html#interactive-examples

github下载地址:https://github.com/mozilla/pdf.js

第一步:下载pdf.js

第二步:下载解压,文件内容如下图

pdfjs android pdfjs android上无法预览文件_pdfjs android

 第三步:直接打开viewer.html是空白,pdf没有加载出来,如下

pdfjs android pdfjs android上无法预览文件_pdfjs android_02

pdfjs android pdfjs android上无法预览文件_pdf_03

因为运行viewer.html需要在服务器环境上运行才有反应

如果没有安装服务器可以安装进行测试(寡人提供两种方式IIS和MAMP)

可以用IIS进行测试没有安装可以移步?

win10IIS安装使用教程

1.安装好后我们把压缩好的文件夹添加进去

pdfjs android pdfjs android上无法预览文件_pdfjs android_04

2.根据你分配的ip,在浏览器地址栏输入ip改为你的(http://192.168.1.102/web/viewer.html)

就可以看到下载的默认的pdf了。

pdfjs android pdfjs android上无法预览文件_pdfjs android_05

还可以用MAMP进行测试没有安装可以移步?

MAMP安装使用教程

1.安装好了我们就使用它,首先把解压的文件夹复制一份到MAMP存文件的文件夹(htdocs)?详细介绍了。

pdfjs android pdfjs android上无法预览文件_pdf_06

pdfjs android pdfjs android上无法预览文件_pdf_07

 2.开启MAMP服务

pdfjs android pdfjs android上无法预览文件_js_08

 3.输入地址localhost,这个MAMP默认的文件

pdfjs android pdfjs android上无法预览文件_js_09

4.找到复制进去的文件夹,按层级找到viewer.html所在位置,默认pdf文件打开了。

pdfjs android pdfjs android上无法预览文件_js_10

 四、现在能运行了,那么如何替换自己需要替换的pdf

pdfjs android pdfjs android上无法预览文件_插件_11

   1.把默认的换成自己的

   2.在viewer.js中检索DEFAULT_URL 得到这个

pdfjs android pdfjs android上无法预览文件_pdf_12

compressed.tracemonkey-pldi-09换成自己的文件名,例如:我的-applet.pdf,

      如果pdf文件与viewer.js不在一层目录中,改成相对路径即可:

      var DEFAULT_URL = ' ../doc/ applet.pdf'.

pdfjs android pdfjs android上无法预览文件_插件_13

   4.刷新浏览器(有可能会f5刷新还是出不来,需要强行刷新Ctrl+F5)。

pdfjs android pdfjs android上无法预览文件_pdf_14

五、我们发现了,viewer.js中DEFAULT_URL后面只能放一个文件名,如果我要展示多个应该如何呢?

   1.viewer.html可以通过页面参数传值的方式加载pdf文件,例如:我们想打开applet.pdf文件的话

   2.先把viewer.js中的参数修改为空:

pdfjs android pdfjs android上无法预览文件_插件_15

   3.然后把url改写为参数传值:http://localhost/pdfjs/web/viewer.html?file=applet.pdf

   4.浏览器地址输入http://localhost/pdfjs/web/viewer.html?file=applet.pdf

pdfjs android pdfjs android上无法预览文件_pdfjs android_16

5.换一个pdf文件试试,也可以打开

pdfjs android pdfjs android上无法预览文件_pdfjs android_17

pdfjs android pdfjs android上无法预览文件_pdfjs android_18

这样需要多少pdf文件就可以放入到文件夹来,当你的项目用到这么多的时候,比如点击按钮跳转

http://localhost/pdfjs/web/viewer.html?file=applet.pdf

这个就是一个pdf文件的连接,当然localhost是你服务器的ip地址。

好的,pdf.js简易教程就说到这,如果有些说错了或者是您看的不清楚的欢迎一起交流学习。