因为需要,要做类似百度文库的功能,在网上搜了一大把教程,最流行的一套方案就是 先将文档转换成pdf格式,然后利用swftools转换成flash 最后利用flexpaper显示出来。这里的方法在这个博客上讲的很详细
传送门 :http://www.cnblogs.com/luckyxiaoxuan/archive/2012/06/13/2548331.html
前面部分还好 但其中也遇到了很多小问题。首先是如果转换的pdf是单页的话 flexpaper加载不了
参考:
实现仿百度文库及一些小问题
传送门 http://www.cnblogs.com/qinpeifeng107/archive/2011/08/29/2158879.html
其次最头大的来了 也就是多线程。考虑到如果不同的人同时上传文档的话需要等待一段时间 因此用多线程 实现文档转换。但问题也就来了。用子进程转换时发生阻塞,(当时我不知道是这个原因 ,现象就是 当转换一些比较大的文档时,进程会卡在那里不动了。)上网找了一些文章 也顺便列出来吧
情况类似 http://topic.csdn.net/u/20110615/11/bda4192a-e6ee-4fec-9811-8340195c6e2a.html
原因及解决的方法 http://nopainnogain.iteye.com/blog/825176
但我在看了一swftools的参数详细说明后 想会不会阻塞的原因是因为调用外部程序 输出警告造成的。发现 pdf2swf工具参数列表中有一个是-qq 是不显示警告内容。于是我增加这个参数,发现也能正确转换了。但是我想这个不是根本原因。也是参照上面那篇文章想到了。大家如果遇到这个问题,可以尝试一下。
最后
传送门 swftools 工具参数详解 http://www.cnblogs.com/jiang1984j/archive/2010/07/23/1986757.html