Flexpaper在线阅读器初体验(类似百度文库,豆丁网)
By:Roy.LiuLast updated:2012-08-21
Flexpaper 是一个用来在线浏览PDF 的阅读器。好处之一就是:
1.可以保护PDF文档不能随便被人下载,只能阅读。
2.百度文库,豆丁网,都采用这种方式,甚至用这种方式盈利.
用flexpaper 最大的好处,这是个免费的,开源的在线阅读工具,你甚至可以修改源代码,去掉LOGO等信息,完全变成自己的阅读器,虽然有点不道德,但确实可以这么做。
在线阅读器的原理:
1.当用户上传一个文档,可能是 TXT,DOC,DOCX,XLS,XLSX,PPT,PPTX等格式的问的文档。
2.上传之后,调用openoffice 服务,将 文档转成 PDF 格式。 微软office 2007 之后也支持将文档转成PDF,因此也是可行的。
3.将PDF 文档转成 SWF 格式。利用开源攻击 swftool.
4.在网页上呈现 swf ,也就能在线浏览文档了. 你可以做一个好的工具来控制 swf 的浏览,所以很多人用 flex 来做。
说明:
工具本身基于PHP,ASP.NET 提供了调用说明例子。这里不详细解释,因为我自己用JAVA,PYTHON.所以在 doc-pdf ,pdf-swf 这两个方面的程序还得自己写。
这两个程序应该比较简单,调用openoffice 服务命令,swftool 命令而已,我的重点,就在于先能在浏览其中正确打开。以后有时间在来研究其他的。
试用笔记:
1.下载Flexpaper. 我下载的是 1.5.6 版本.
2.解压后,直接打开 index.html 测试,发现并不成功,一直处于 initializing 状态。说明这方方式不可行。
3.搭建一个web application server 环境,我用了 Apache 。配置好目录等。在网页中打开,http://localhost/docview/index.html
发现什么鸟?结果出来了,在线阅读PDF 文档了。
开源工具 : http://swftools.org 一点小说明,参考flexpaper官方说明:
对于小文件,直接执行命令:
这中情况下,调用方法:SwfFile : escape('Paper.swf'),
对于大文件, 可以将每一页转换成一个 swf 文件,但很占空间。
结果就会生成 Paper1.swf,Paper2.swf .....
最好是几十页转换成一个PDF,但还没找到好的方法。
这种情况下 调用方法: SwfFile : "{Paper[*,0].swf,28}", // 28 是总页数
比我我测试的例子:
1.可以保护PDF文档不能随便被人下载,只能阅读。
2.百度文库,豆丁网,都采用这种方式,甚至用这种方式盈利.
用flexpaper 最大的好处,这是个免费的,开源的在线阅读工具,你甚至可以修改源代码,去掉LOGO等信息,完全变成自己的阅读器,虽然有点不道德,但确实可以这么做。
在线阅读器的原理:
1.当用户上传一个文档,可能是 TXT,DOC,DOCX,XLS,XLSX,PPT,PPTX等格式的问的文档。
2.上传之后,调用openoffice 服务,将 文档转成 PDF 格式。 微软office 2007 之后也支持将文档转成PDF,因此也是可行的。
3.将PDF 文档转成 SWF 格式。利用开源攻击 swftool.
4.在网页上呈现 swf ,也就能在线浏览文档了. 你可以做一个好的工具来控制 swf 的浏览,所以很多人用 flex 来做。
说明:
工具本身基于PHP,ASP.NET 提供了调用说明例子。这里不详细解释,因为我自己用JAVA,PYTHON.所以在 doc-pdf ,pdf-swf 这两个方面的程序还得自己写。
这两个程序应该比较简单,调用openoffice 服务命令,swftool 命令而已,我的重点,就在于先能在浏览其中正确打开。以后有时间在来研究其他的。
试用笔记:
1.下载Flexpaper. 我下载的是 1.5.6 版本.
2.解压后,直接打开 index.html 测试,发现并不成功,一直处于 initializing 状态。说明这方方式不可行。
3.搭建一个web application server 环境,我用了 Apache 。配置好目录等。在网页中打开,http://localhost/docview/index.html
发现什么鸟?结果出来了,在线阅读PDF 文档了。
开源工具 : http://swftools.org 一点小说明,参考flexpaper官方说明:
对于小文件,直接执行命令:
C:\SWFTools\pdf2swf.exe Paper.pdf -o Paper.swf -f -T 9 -t -s storeallcharacters
这中情况下,调用方法:SwfFile : escape('Paper.swf'),
对于大文件, 可以将每一页转换成一个 swf 文件,但很占空间。
C:\SWFTools\pdf2swf.exe Paper.pdf -o Paper%.swf -f -T 9 -t -s storeallcharacters
结果就会生成 Paper1.swf,Paper2.swf .....
最好是几十页转换成一个PDF,但还没找到好的方法。
这种情况下 调用方法: SwfFile : "{Paper[*,0].swf,28}", // 28 是总页数
比我我测试的例子:
From:一号门
Previous:python 正则表达式,个人阶段总结
Next:文档在线阅读器 java 版本参考资料
COMMENTS