首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

pdf2swf+flexpaper解决pdf在线阅览(类百度文库)

2012-12-25 
pdf2swf+flexpaper解决pdf在线阅读(类百度文库)1:工具准备swftools.exe 下载http://www.swftools.org/down

pdf2swf+flexpaper解决pdf在线阅读(类百度文库)

1:工具准备
swftools.exe 下载
http://www.swftools.org/download.html
安装至D盘
SWFTools提供了一系列将各种文件转成swf的工具:
font2swf.exe
gif2swf.exe
jpeg2swf.exe
pdf2swf.exe
png2swf.exe
wav2swf.exe
这里我们只使用pdf2swf.exe

flexpaper下载
http://code.google.com/p/flexpaper/
这里我们使用已经编译好的FlexPaper的flash版本

2:示例语言,这里我使用的两种开发环境做示例
?? php示例
?? 由pdf生成swf文件

?

??? java示例

?

?? 以上是php,java将pdf转换成swf方式,那显示呢,这样我们会使用到flexpaper,一下是flexpaper的使用
?? 使用flexpaper展现swf

?

通过上述方式我们可以将pdf转换成相应的swf文件,并通过flexpaper显示,防止用户下载,或copy。

效果图

pdf2swf+flexpaper解决pdf在线阅览(类百度文库)

pdf2swf的详细参数说明,上网百度或者Google都能查到,但是注意的最好指定flashversion 为9,防止出现一些意外的错误。
pdf2swf 中并不是所有的pdf都能转换,加密的pdf pdf2swf转换不了


flexpaper 的参数详细说明请参考 http://code.google.com/p/flexpaper/wiki/Parameters

flexpaper 常用的API? http://code.google.com/p/flexpaper/wiki/API

?

?

如果出现乱码问题可能是字符集,网上有很多的相关解决方法可以查询【我没有碰到字符集堵的问题】。

还有pdf中含有图片可能转换成swf后图片不大清晰。

?

word,wps,txt等文档也可以采用该方式转换,但工具不一定为swftools

上传的flexpaper附件中已经包含flexpaper中相关文件不用重新下载,只要下载swftools,并安装。
flexpaper附件中包含了pdf2swf.jsp与pdf2swf.php两个文件及flexpaper相关的组件可以在java或php环境中运行。

?

缺少字符集产生乱码问题请参考该篇文章


http://xianglp.iteye.com/blog/849190

?

17 楼 80197675 2011-03-23   poincare 写道您好,请教一下,我的swf文件和页面不在一个目录下,我的加载地址怎么写?
我用的相对根目录的,但是加载不出来
应该不会吧,我项目里swf文件和页面也在一个目录下,用相对路径就能加载到。
相对根目录,你能用你的目录直接在IE中能访问到swf文件吗,如果能的话,应该能加载的啊!!! 18 楼 JeeYao 2011-03-24   80197675 写道poincare 写道您好,请教一下,我的swf文件和页面不在一个目录下,我的加载地址怎么写?
我用的相对根目录的,但是加载不出来
应该不会吧,我项目里swf文件和页面也在一个目录下,用相对路径就能加载到。
相对根目录,你能用你的目录直接在IE中能访问到swf文件吗,如果能的话,应该能加载的啊!!!
我测试过发现swf文件放置三层下之后,swf文件就加载不了了,是不是有这个限制,还是我自己的设置出问题呢? 19 楼 80197675 2011-03-24   JeeYao 写道80197675 写道poincare 写道您好,请教一下,我的swf文件和页面不在一个目录下,我的加载地址怎么写?
我用的相对根目录的,但是加载不出来
应该不会吧,我项目里swf文件和页面也在一个目录下,用相对路径就能加载到。
相对根目录,你能用你的目录直接在IE中能访问到swf文件吗,如果能的话,应该能加载的啊!!!
我测试过发现swf文件放置三层下之后,swf文件就加载不了了,是不是有这个限制,还是我自己的设置出问题呢?
这个我也没有深入研究过,只知道它不支持绝对路径。你先上官网看下是否有这个bug的报告。
我所在项目也是三层以下,但页面和swf相差只有两层一点问题也没有。 20 楼 Johnny_GZ 2011-04-11   你好,我又回来了,想请问一下你有没有尝试过批量转换呢?因为我在进行批量转换为swf的时候我的java代码没有结束的话系统进程中的pdf2swf.exe一直存在,然后要生成的swf文件也一直出不来,直到程序结束,进程结束,文件才生成!不知道怎么能够解决这个问题 21 楼 80197675 2011-04-12   Johnny_GZ 写道你好,我又回来了,想请问一下你有没有尝试过批量转换呢?因为我在进行批量转换为swf的时候我的java代码没有结束的话系统进程中的pdf2swf.exe一直存在,然后要生成的swf文件也一直出不来,直到程序结束,进程结束,文件才生成!不知道怎么能够解决这个问题
这个没玩过啊,所以这块没法帮你呢,你上网看看有没有解决方案。
对了你能把批量转换的代码 与pdf2swf调用相关的代码给我看看吗?
我不知道你采用什么方式调用让 pdf2swf.exe 一直存在。 22 楼 Johnny_GZ 2011-04-13   80197675 写道Johnny_GZ 写道你好,我又回来了,想请问一下你有没有尝试过批量转换呢?因为我在进行批量转换为swf的时候我的java代码没有结束的话系统进程中的pdf2swf.exe一直存在,然后要生成的swf文件也一直出不来,直到程序结束,进程结束,文件才生成!不知道怎么能够解决这个问题
这个没玩过啊,所以这块没法帮你呢,你上网看看有没有解决方案。
对了你能把批量转换的代码 与pdf2swf调用相关的代码给我看看吗?
我不知道你采用什么方式调用让 pdf2swf.exe 一直存在。

呵呵  谢谢  解决了,是因为批量处理太多了所以被堵塞了,清理掉就执行下去了,
不过我现在这个flexpaper将PrintEnabled、PrintToolsVisible都设置为false依然是没效果,网上也见有人遇到这种情况,没找到解决的办法呢! 23 楼 80197675 2011-04-13   Johnny_GZ 写道80197675 写道Johnny_GZ 写道你好,我又回来了,想请问一下你有没有尝试过批量转换呢?因为我在进行批量转换为swf的时候我的java代码没有结束的话系统进程中的pdf2swf.exe一直存在,然后要生成的swf文件也一直出不来,直到程序结束,进程结束,文件才生成!不知道怎么能够解决这个问题
这个没玩过啊,所以这块没法帮你呢,你上网看看有没有解决方案。
对了你能把批量转换的代码 与pdf2swf调用相关的代码给我看看吗?
我不知道你采用什么方式调用让 pdf2swf.exe 一直存在。

呵呵  谢谢  解决了,是因为批量处理太多了所以被堵塞了,清理掉就执行下去了,
不过我现在这个flexpaper将PrintEnabled、PrintToolsVisible都设置为false依然是没效果,网上也见有人遇到这种情况,没找到解决的办法呢!

是吗,有没有试一试其他浏览器看看。我原来用的时候都好使的。

24 楼 shuizhijia123 2011-08-03   lz你好,我也是用的跟你一样的方法来实现百度文库效果的(pdf2swf+flexpaper)
但用pdf2swf生成的swf文件通过flexpaper浏览时,所有的文字都不可以搜索,好像是都变成了曲线图了,在网上也搜了很多,是在用swftools时,添加一些参数了,还有设置xpdf-chinese-simplified了,但是生成出来的swf文件在浏览时,依然搜索不到文本,请问你的可以吗? 25 楼 80197675 2011-08-19   shuizhijia123 写道lz你好,我也是用的跟你一样的方法来实现百度文库效果的(pdf2swf+flexpaper)
但用pdf2swf生成的swf文件通过flexpaper浏览时,所有的文字都不可以搜索,好像是都变成了曲线图了,在网上也搜了很多,是在用swftools时,添加一些参数了,还有设置xpdf-chinese-simplified了,但是生成出来的swf文件在浏览时,依然搜索不到文本,请问你的可以吗?

只要你不是图片方式转成swf,我记得是能搜索的,你转的时候加 这个参数【 -s flashversion=9 】加了呢吗?如果没有的话 是用的好像是比较低的版本 好像是 6,转出来的swf可能有点问题。
不知道现在的pdf2swf.exe 最高支持那个版本的flash,我做的时候最高支持到9,不知道现在能支持10。如过还不行的话,你就找找pdf2swf 还有很多其他的参数,都试试【呵呵 很多参数我都没有试过】,还有flexpaper 也有一些参数 你也尝试用下。 26 楼 skyuck 2011-08-26   楼主,我对flex不是很熟悉,请问怎么去掉logo呢? 27 楼 qizhijun 2011-08-29   学习学习,研究研究。 28 楼 tang574884050 2011-11-17   加载一个大一点的文件为什么那么慢 几分钟还不显示 29 楼 antony102201 2012-01-04   运行不起来啊 报这个错
Error #2044: 未处理的 IOErrorEvent:。 text=Error #2124: 加载的文件为未知类型。
30 楼 80197675 2012-01-05   antony102201 写道运行不起来啊 报这个错
Error #2044: 未处理的 IOErrorEvent:。 text=Error #2124: 加载的文件为未知类型。

这个问题 还正没有碰到过,是那块抛出来的java,还是javacript?? 31 楼 zhang1597116 2012-05-07   请问一下,防止用户下载,或copy的思路是什么。好像看不出来采用什么方法防下载的 32 楼 80197675 2012-05-08   zhang1597116 写道请问一下,防止用户下载,或copy的思路是什么。好像看不出来采用什么方法防下载的
pdf如果采用在线方式打开的话,用户是可以直接下载,并能从里面copy的东西,
采用flash方式后,大部分用户只能浏览【也可以采用一些方式把swf下载】,但是你可以采取一些其他手段进行处理可以避免,你去看下豆瓣,我记得豆瓣也是使用了flexpaper,他自己在这个基础上进行了一些二次开发。。。 33 楼 ysh634579583 2012-05-09   我正在实现在线阅读的功能,看到你的资料很好,但是我为什么就是打不开呢?就是有FlexPaper的框,但是没有test的文本??这应该不用装FlexPaper。。应该里面自带了吧。。。 34 楼 80197675 2012-05-10   ysh634579583 写道我正在实现在线阅读的功能,看到你的资料很好,但是我为什么就是打不开呢?就是有FlexPaper的框,但是没有test的文本??这应该不用装FlexPaper。。应该里面自带了吧。。。
是不是文件路径不对,你可以用个已经好的swf文件看看,能不能打开。 35 楼 jackyrong 2012-10-26   想问下,有什么办法甚至能保证swf不被下载呢? 36 楼 80197675 2012-11-05   jackyrong 写道想问下,有什么办法甚至能保证swf不被下载呢?
这个还真没考虑过,我想可以使用一下机制,例如不让直接使用url访问swf文件,采用url加密,百度的就是一段加密串。2:对flexpaper进行下二次开发,加入你自己的一下措施,例如加密解密文件。其实这些都是相对,baidu的文档不是不让下载吗,但是你从网上可以还是可以找到下载方式的

热点排行