首页 新闻 会员 周边 捐助

现在要做个类似百度文库的web程序,大家知道上传的文档都通过转换成swf文件,这转换很耗时和机器cpu

0
悬赏园豆:10 [待解决问题]

现在产品里面要做个类似百度文库的模块,大家知道上传的文档都通过转换成swf文件,这转换很耗时和机器cpu,所以当多用户同时上传多个文档的时候,为了服务器不崩溃,我们想的办法是让上传 的文件和文件转换分离,让文件一个个的去转换,而不是一起转换,所以针对于这个转换,综合各个方面的什么最优技术方案比较好?

yjwpop的主页 yjwpop | 初学一级 | 园豆:22
提问于:2013-06-02 13:00
< >
分享
所有回答(5)
0

最好的肯定是加硬件, 往死了加

悟了 | 园豆:521 (小虾三级) | 2013-06-02 13:40

加硬件是不能的,了不起就是个暂时的文件服务器,后续根据业务量的需要,会考虑投入硬件成本

支持(0) 反对(0) yjwpop | 园豆:22 (初学一级) | 2013-06-02 16:00
0

我的做法是Windows服务开两个作业,一个是doc to pdf,一个是pdf to swf ,文件都排队,每个作业同一时间只转一个

码尔代夫iimax | 园豆:3138 (老鸟四级) | 2013-06-02 15:44

按你说的,也就是创建两个windows服务,并且创建消息队列,然后服务启动就开始工作!你做过类似的吗,能给个借鉴吗?

支持(0) 反对(0) yjwpop | 园豆:22 (初学一级) | 2013-06-02 15:58
0

我博客中有类似的文章

http://www.cnblogs.com/mbailing/

jerry-Tom | 园豆:4077 (老鸟四级) | 2013-06-03 09:51

你好,我看了你博客相关的文章,用的一个调用FlashPrinter.exe转换的,不过转换过程中先打开文件,然后再进行转换,若果文件无法打开,是不是就转换不成功 了,还有就是转换office文档,转换服务端还得安装一套office,C#调用office Api也能进行文档转换成pdf,这两种方案转换服务器都得安装office,不知道这两种方案哪一种更好?

支持(0) 反对(0) yjwpop | 园豆:22 (初学一级) | 2013-06-05 17:14
0

设计个swf插件,可以浏览doc, txt文档的即可。

程序诗人 | 园豆:313 (菜鸟二级) | 2013-06-04 15:40
0

1.我目前做的方案是windows服务转换文件为swf。如果用户上传的是office文档,先调用一次转换为pdf,这个步骤可以在服务器上安装office来解决(2007以上),或者安装wps也可以调用转换。 如果是pdf则可以使用开源的swftools转换为swf文档。最后用flexpaper来在线浏览。优点是比较方便,而且转换后效果几乎与原文件一样。估计目前的大多是这个方案。缺点也很明显:有些文档会转换失败,查了很久,找不到问题。另外,移动终端全部不支持flash,这点比较纠结。

2.目前我在做的是直接把所有文档转换为html文档,有文字的提取文字,不能提取文字的生成背景图。这样所有的浏览器,包括移动终端的都可以在线浏览了。

这个方案的难点就是如何转换为html,我总结的有两个方案。一是收费的,有个pdf.net组件,可以在服务器上把pdf文件转换为html文件,不过费用不低,QQ邮箱的附件预览貌似就是pdf.net生成的,只是推测,我对比过pdf生成的html,源码非常相似。2是国内有个开源的pdf2htmlEX的程序,不过只能运行在linux服务器上,源码:https://github.com/coolwanglu/pdf2htmlEX

还有一种简单一点的方案。如果浏览器支持html5,可以直接用pdf.js这个开源js库来在线显示pdf文件,支持翻页,效果还不错。不过1是要求支持html5,2是同样移动终端的cpu运行这个pdf.js需要好几分钟,只能作罢。

平如水 | 园豆:696 (小虾三级) | 2013-06-15 22:43

看来比较靠谱的还是方案1了,谢谢你的解答

支持(0) 反对(0) yjwpop | 园豆:22 (初学一级) | 2013-06-19 22:12

Aspose.Word可以解决你的问题。

支持(0) 反对(0) 何小宝 | 园豆:19 (初学一级) | 2013-10-22 11:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册