使用在线预览时,需要先下载FlexPaper+swftools+jodconverter+OpenOffice四大工具。
搭建环境
1.先安装Swftools(pdf2swf)
Swftools(pdf2swf)安装路径:C:\Program Files (x86)\SWFTools
2.安装OpenOffice
OpenOffice安装路径:C:\Program Files (x86)\OpenOffice.org 3
*****启动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;" -nofirststartwizard
3.新建一个项目webProject
1.在lib下需要加入JodConverter压缩包中lib目录下的jar包,全部复制进去即可。
2.先webroot下新建一个flexpaper文件夹,将下载的FlexPaper_1.4.5_flash解压缩后,文件夹下所有文件复制到flexpaper中。
3.将安装好的swftools-0.9.2,安装目录中的pdf2swf.exe 复制到项目附件目录中。(本程序是与上传附件在一个文件夹下)
#############注意##################
1.该项目第一次运行时,因为程序中有自动开启OpenOffice服务的代码,所有第一次无法实现在线预览,控制台报“OpenOffice监听器异常"
,再次运行该异常即消失。
如果用户希望该异常不存在,则可以在doc环境下先手动开启OpenOffice服务。
2.该项目是通过上传一个文件然后再进行预览的。而且上传文件类型只能是.doc/.docx/.xls/.xlsx/.pdf格式的。详情可参照代码。
3.用户手动更改文件类型,预览异常。例如:文件类型本身是.docx,用户手动更改为.doc,预览异常。其他不允许的格式更不用说。
4.另外附一个FlexPaper阅读器开发手册,里面有各个参数的详细解释,详细大家一看就能明白的。
~~~~~~~~~~~~~~~~~~~~~~~
这是以上我开发在线预览时的一些总结。感谢前辈们的开源精神奉献,我才能顺利完成,所以让我们大家将开源精神一直延续下去吧!谢谢!
package com.function.util;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.net.ConnectException;
import java.util.ResourceBundle;
import com.artofsolving.jodconverter.DocumentConverter;
import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;
import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection;
import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter;
/**
* 将文件转成swf格式
*
* @author Administrator
*
*/
public class C