经管资源库项目总结----在线预览office文件的实现与总结
依旧是这个经管的项目。在线预览作为资源和文档管理系统的一个很酷的并且是如此重要的功能,是必须要实现的。然后百度一下office在线预览,看起来so eazy啊,各种博客各种demo,一下子就做出效果来了。开始时我采用的方法是用openoffice+jobconverter+swftools+fexpaper的方式。参考博客:http://blog.csdn.net/sunny_sailor/article/details/7311411
后来发现,还是有很多问题的。比如首先每次都要注册windows服务,很是麻烦,(后来发现是自己注册服务的方式不对。)然后在另一篇博客上发现jobconverter 3可以直接启动openoffice服务(之前用的是2.2的版本)。参考博客:http://www.cnblogs.com/luckyxiaoxuan/archive/2012/06/14/2549012.html
注:最新版的libreoffice支持命令行调用进行转换:http://www.cnblogs.com/Mr-Nobody/p/3537072.html
再如,这个就比较严重了。我上传的一个电路课的课堂ppt在转换的过程中swftools直接进程终止,转换失败。。。悲剧了,因此首先我在资源展示的部分多一条显示转换成功还是失败的提示,功能也许比不上别人,但是体验方面总不能比别人差。然后又是一顿谷歌百度加360搜索,并且根据转换失败的ppt的特征猜测原因,估计是这个ppt 的图像比较多比较复杂导致的。最终发现了一个博客正好有我的问题的解决办法:http://blog.163.com/bgh1988@126/blog/static/10588885920132265193446/
这个部分比较重要,就复制过来了。
swftools中的pdf2swf转换Error overflow ID 65535 解决办法 2013-03-26 17:19:34| 分类: php |字号 订阅
近几日因为项目需要在线转换pdf到swf实现电子期刊阅读,用到了这个工具,版本是:swftools-0.9.2.tar.gz 当 然也遇到了很头疼的问题,那就是在转换pdf中色彩图形比较复杂的页时会抛出错误,有猿友说加上-s poly2bitmap参数就可以解决,可是我告诉 你加上-s poly2bitmap参数在0.9.2版本中是存在bug的,转换后的swf会缺少白色背景,无奈最终解决方案只好将版本降低为两年前的 swftools-0.9.1版本了。
由于0.9.1版本存在字体问题,转换时只加上-s poly2bitmap是不可取的,你会发现报出一堆缺少字体的错误,这个时候在加上一个-S参数即可完美解决! @解决方案: 适用swftools-0.9.1版本的源码包 在执行转换的命令中加上 -S 不使用字体,字体都转为形状 0.9.1版本下完整命令如下:pdf2swf xx.pdf -o %.swf -s poly2bitmap -S 如果你确定你的pdf不会有那么复杂的图案或则色彩比较单调,还是使用0.9.2吧 0.9.2命令:pdf2swf xx.pdf -o %.swf -t -f -T 9
swftools中的pdf2swf转换Error overflow ID 65535 解决办法
去swftool官网上找不到老版本的,于是百度了一个,试了一下,果然可以转换成功了。(第一个比较严重的bug解决。)
然后满以为这一块基本上大功告成了,结果在做前台页面时,我一时兴起把之前大家做的这个项目的需求分析的文档上传上去了,结果一上传,又悲剧了。。大量的word文档转换失败。。。不过这个问题还算比较明显,是openoffice的原因。因为我直接用openoffice打开这个文档都打不开,汗~~但是这个文档无论是msoffice还是 wps都可以打开,而且本身就是wps做的。此时想起jodconverter不仅支持openoffice,还支持openoffice的分支libreoffice,于是就下载了最新的libreoffice,下载-安装-和openoffice看起来差不多。。但是可喜 的是libreoffice可以打开这类文档!!!。不过在修改officehome配置之后,发现joboffice无法开启服务。。。此时百度谷歌+360搜索都悲剧了,大部分都是关于openoffice的,很少关于libreoffice的。直到在开源中国看到有人讨论,有人说是因为libreoffice的编程接口在3.6之后变化较大,jodconverter可能不支持了。。改用3.4版本就行啦。可悲的是在网上根本找不到3.4版本的了,亏我偌大一个天朝,各种版本msoffice的破解到处都有,然而开源又免费的libreoffice的下载地址却只有最新的版本,历史版本几乎找不到。。官网上都没有。这时 我只能被迫使出我的自制盘搜神器-360极速浏览的一款盘搜插件,然而依然找不到。。。最终还是使用盘搜网找到的。然后下载-安装-修改配置。终于成功了。。。。
最后奉上demo地址和libreoffice3.4(几乎全网绝版,下载地址只有那么几个)
以及 swftools的参数详解:http://www.cnblogs.com/carpe-diem/articles/2306189.html
demo:http://awj4stba8l.l4.yunpan.cn/lk/Q9c2CiFSi8Xfn
libreoffice3.4:http://awjpcaagj6.l4.yunpan.cn/lk/Q9ckdgi7ik6KV
经管资源库项目总结----在线预览office文件的实现与总结的更多相关文章
- 在线预览office文件
Office Online 实现在线预览 office的在线预览,针对不同的浏览器版本和系统具有要求,具体的相关文档请参考官方文档. 利用office online 平台进行office 文档的在线查 ...
- 在线预览Office文件【效果类似百度文库】
引言 结合上个项目和目前做的这个项目,其中都用到了Office文件在线预览,目前项目中是用到公司购买的Ntko控件,该控件每次浏览文件时则会提示安装信任插件,很繁琐,而且浏览效果不好. 提到Offic ...
- 在线预览Office文件【效果类似百度文库】(转载)
转载地址:http://www.cnblogs.com/sword-successful/p/4031823.html 引言 结合上个项目和目前做的这个项目,其中都用到了Office文件在线预览,目前 ...
- JAVAWeb项目实现在线预览、打开office文件
Web项目实现在线预览浏览word.ppt.excel文档方法 调用以下链接 https://view.officeapps.live.com/op/view.aspx?src=你的文档绝对路径 这里 ...
- Java实现web在线预览office文档与pdf文档实例
https://yq.aliyun.com/ziliao/1768?spm=5176.8246799.blogcont.24.1PxYoX 摘要: 本文讲的是Java实现web在线预览office文档 ...
- 使用pdfjs插件在线预览PDF文件
前言 本文介绍在html中使用 pdfjs插件在线预览PDF文件的方法. 实现步骤 下载 pdfjs 并引入项目中 到PDFJS官网 http://mozilla.github.io/pdf.js/g ...
- 用pdf.js实现在移动端在线预览pdf文件
用pdf.js实现在移动端在线预览pdf文件1.下载pdf.js 官网地址:https://mozilla.github.io/pdf.js/ 2.配置 下载下来的文件包,就是一个demo ...
- WinForm中预览Office文件
WinForm预览Office文档 使用WinForm, WPF, Office组件 原理:使用Office COM组件将Word,Excel转换为XPS文档, 将WPF的DocumentViewer ...
- asp.net在线预览txt文件(简单实现)
最近在做文件的在线预览,发现txt文件没有一个较好的方法去实现,想了想可能是比较简单就直接在后台输出了 txt文件
随机推荐
- Android 给应用定制皮肤
Android 给应用定制皮肤 导读:皮肤也就是相关的资源文件单独放置在某个工程中,一种皮肤一个工程文件.一个工程包括N多的资源文件,多个工程间资源的关系是,文件名,资源ID等完全一样. 在实现程序功 ...
- centos下安装usb摄像头驱动
centos安装在虚拟机下,win7下能正常使用摄像头. 虚拟机显示监测到摄像头,但驱动安装失败. terminal下输入yum install cheese,提示是否安装,输入y确认下载,大概100 ...
- Git CMD - tag: Create, list, delete or verify a tag object signed with GPG
命令格式 git tag [-a | -s | -u <keyid>] [-f] [-m <msg> | -F <file>] <tagname> [& ...
- over Oracle
QL code: sql over的作用及用法RANK ( ) OVER ( [query_partition_clause] order_by_clause )DENSE_RANK ( ) OVER ...
- Sql Server关于text类型的替换
UPDATE Store SET Body=replace(convert(varchar(8000),Body),'http://120.89.46.68:8007','')
- Contoso 大学 - 使用 EF Code First 创建 MVC 应用
原文 Contoso 大学 - 使用 EF Code First 创建 MVC 应用 Contoso 大学 Web 示例应用演示了如何使用 EF 技术创建 ASP.NET MVC 应用.示例中的 Co ...
- Cocos移植到Android-通过命令行交叉编译打包
当我们在Windows下使用Visual Studio开发好Win32平台的游戏程序后,我们需要把它们移植到不同的平台上.Cocos2d-x支持很多个平台,然而,我们不可能介绍全部平台的移植.我们总结 ...
- CSS 元素垂直居中的 6种方法
利用CSS进行元素的水平居中,比较简单,行级元素设置其父元素的text-align center,块级元素设置其本身的left 和 right margins为auto即可.本文收集了六种利用css进 ...
- C#——字符操作
题目要求:用户随机输入字母及数字组成的字符串,当用户连续输入字符串‘hello’时,程序结束用户输入,并分别显示用户输入的字母及数字的数目. 代码: using System; using Syste ...
- 算法 fill
fill(vec.begin(), vec.end(),); //reset all elements to fill(vec.begin(),vec.begin + vec.size/, );//s ...