最近在项目中需要用到像百度文库一样的可以用来在线阅读的形式,由于大部分的文件都是doc,xls和ppt,经过多方查找,明白了大概的实现原理就是:先将office文件转化为pdf,然后将所得到的pdf文件转化为swf格式的文件,最后在页面上通过FlexPaper来查看所得到的swf文件。基本过程的如下:
一、所用的工具:
工具 |
|
OpenOffice |
http://zh.openoffice.org/new/zh_cn/downloads.html |
JodConverter |
http://sourceforge.net/projects/jodconverter/files/ |
Swftools |
http://www.swftools.org/ |
FlexPaper |
http://flexpaper.devaldi.com/ |
下载完后,需要安装OpenOffice和Swftools两个文件,文件安装路径最好不要有中文和空格!然后将
JodConverter压缩包中lib目录下的jar包,全部复制进项目中的lib包下即可。
安装完OpenOffice后必须开启OpenOffice服务,有以下几种方法开启:
第一种: 以命令的方式开启openoffice的服务
在cmd命令下,cd opeonofiice的安装路径/program 如:
cd c:\program files\openoffice.org 3\program soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;"
第二种 :系统开启openoffice的服务
在系统开启openoffice的服务我们还需要一个Windows Resource Kit tools ,将openoffice server设为系统服务。Windows Resource Kit tools 是微软专为管理人员、开发人员和高级用户开发的,包括管理活动目录、组策略、TCP/IP网络、注册表、系统安全、监测等涉及Windows Server 2003 操作系统的其它很多方面的非常规安装的工具组件。Resource Kit Tools for XP的发布使得XP用户也能使用Resource Kit Tools对这些问题进行处理。
下载windows resource kit tools,我们进行默认安装。
1.打开Windows Resource Kit Tools
在Command Shell执行以下命令:
"C:\Program Files\Windows Resource Kits\Tools\instsrv" OpenOfficeUnoServer "C:\Program Files\Windows Resource Kits\Tools\srvany.exe"
打开 管理工具->服务 可以找到以 OpenOfficeUnoServer 命名的服务
2.打开注册表寻找以下路径
HKEY_LOCAL_MACHINE -> SYSTEM ->ControlSet001 ->Services ->OpenOfficeUnoServer
新建项 Parameters,在该项下添加两个字符串值:
key:Application
value:C:\Program Files\OpenOffice.org 3\program\soffice.exe
key:AppParameters
value:-invisible -headless -accept=socket,host=127.0.0.1,port=8100;urp; -nofirststartwizard
3.在服务控制台,启动 openoffice 服务