初次体验PDF.JS,非常好用的pdf前台包

客户死活要用IE,IE这破烂仗着他老爹微软这几年的影响力,在各大公司占了浏览器的重要职位。

IE就连自己打开pdf也不会,只能靠外援他爹的盘友adobe,adobe自以为有点料,一打开就要上头条,给个iframe让他穿穿他都不要,直接裸身出镜,把哥的整个页面都挡住,靠!!这俩2B!!

pdf.js 是firefox的pdf解析,现在开源,试用了一下,挺好,全js操作,可控性好,想怎么显示就怎么显示,基本达到了人尽可夫滴境地啦~~~哈

首先去下个git。(待会需要用git去拿pdf.js哦)

下载完毕后安装(哥安装的是IE他老爹windows的,哥也被window控制了好些年,悲催)

然后去https://github.com/mozilla/pdf.js/

里面有下载包,有例子,还教你怎么取buil你想要的包。

打开你本地cmd,把direct到安装git的bin包里,

C:\Program Files\Git\bin>

然后输入

git clone git://github.com/mozilla/pdf.js c:/xxxx (此为你要储存的本地路径)

回车,这时你会看到git开始下载。

下载完毕后,你可以再c:/xxxx文件夹里看到下载的文件

好了,里面有examples文件夹,装有一些简单的例子,hellow world,

右键击index.html,open with ie9, 额,开不了,打开修改index.html

添加一个js连接

<script type="text/javascript" src="../../web/compatibility.js"></script>

让它支持IE9

接着打开hello.js, 找到PDFJS.getDocument(‘helloworld.pdf’),改为PDFJS.getDocument(‘http://www.copyright.gov/legislation/dmca.pdf’),让他打开一个online的pdf,安全考虑,因为pdfjs不能打开本地文件,必须要是服务器上的,他原本的这个测试包,是要求发布到一个服务器,然后可以读取,而我没发布,直接点击的,所以就在网上找了一个在线pdf,好了,可以打开了。很好,还没有完成哦

现在要build一个js的包,他包括显示pdf的所有功能,就是他的viewer。

先下载一个node.js

因为只是用来buil,所以我只下了个exe。

把下载下来的exe拷贝到之前下载pdf.js的路径里c:/xxxx

打开cmd, direct to c:/xxxx

确定该路径里有个make.js

然后输入

node make generic

运行结束后,该路径下会生成一个bulid文件夹,里面才是我们要用到的文件

我们来看一下效果

打开一个wamp server,把generic拷贝到wamp server的www里。(大家可以选择自己的web server,我刚好装了wamp,用它比较简单)

打开localhost,找到generic,打开找到里面的web文件夹,点开,选择里面的viewer.html

页面显示

漂亮哦,全pdf的功能,,左上角还有slider,最重要的是,全js,可控性强,想要什么按钮就要什么按钮~~哈

注:项目当中有跨域读取pdf的问题,pdf.js只能读取同一个域里的pdf,如果需要跨域读取,一般需要被请求方set head的Access-Control-Allow-Origin:*,这个不是很好,最好是先用后台读取跨域的pdf流,写到前台,pdf.js读取该后台方法获取流显示。

如php:

打开viewer.js

找到var DEFAULT_URL = ‘compressed.tracemonkey-pldi-09.pdf’;

该为var DEFAULT_URL = ‘test.php’;

然后再test.php里

<?php echo file_get_contents("");?>

发光并非太阳的专利,你也可以发光

初次体验PDF.JS,非常好用的pdf前台包

相关文章:

你感兴趣的文章:

标签云: