oppenoffice下载路径:http://www.openoffice.org/download/index.html
jodconverter下载路径:https://sourceforge.net/projects/jodconverter/files/
pdf.js下载路径:http://mozilla.github.io/pdf.js/getting_started/#download
oppenoffice 需要安装
jodconverter lib下所有的文档全部放进去,与项目重合的删除
使用oppenoffice+jodconverter 转pdf
/**
* wk
* 文档转为pdf
* @author Administrator
*
*/
public class OppenOfficeUtils {
/**
* 文档转为pdf
* 2019/7/25
* @param sourceFile 文件名称和路径
* @param destFile pdf 文件名称和路径
* @return
*/
public static boolean officeToPDF(String sourceFile, String destFile) {
String OpenOffice_HOME = OppenpathUtils.HOMEPATH; // 这里是OpenOffice的安装目录,
//String OpenOffice_HOME = "C:\\Program Files (x86)\\oppenoffice\\program"; // 这里是OpenOffice的安装目录,
if (OpenOffice_HOME.charAt(OpenOffice_HOME.length() - 1) != '\\') {
OpenOffice_HOME += "\\";
}
Process pro = null;
try {
File inputFile = new File(sourceFile);
if (!inputFile.exists()) {
// 找不到源文件, 则返回false
return false;
}
// 如果目标路径不存在, 则新建该路径
File outputFile = new File(destFile);
if (!outputFile.getParentFile().exists()) {
outputFile.getParentFile().mkdirs();
}
//如果目标文件存在,则删除
if (outputFile.exists()) {
outputFile.delete();
}
String command = OpenOffice_HOME+ OppenpathUtils.FWPATH;
// String command = OpenOffice_HOME+ "soffice.exe -headless -accept=\"socket,host=127.0.0.1,port=8100;urp;\" -nofirststartwizard";
//启动服务需要优化
pro = Runtime.getRuntime().exec(command);//启动openoffice服务
OpenOfficeConnection connection = new SocketOpenOfficeConnection("127.0.0.1", 8100);
connection.connect();
DocumentConverter converter = new StreamOpenOfficeDocumentConverter(
connection);
converter.convert(inputFile, outputFile);
connection.disconnect();
return true;
} catch (ConnectException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}finally {
pro.destroy();//销毁openoffice服务
}
return false;
}
}
/**
* 用于启动oppenoffice服务
* @author Administrator
*
*/
public class OppenpathUtils {
/**
* wk
* oppenoffice 安装路径和cmd启动命令
* windows 启动路径信息
* public static final String HOMEPATH ="C:\\Program Files (x86)\\oppenoffice\\program"; //oppenoffice安装路径
* public static final String FWPATH="soffice.exe -headless -accept=\"socket,host=127.0.0.1,port=8100;urp;\"-nofirststartwizard";//启动信息
* windows 启动路径信息
* public static final String HOMEPATH ="/opt/openoffice.org3"; //oppenoffice安装路径
* public static final String FWPATH="soffice -headless -accept=\"socket,host=127.0.0.1,port=8100;urp;\" -nofirststartwizard";//启动信息
*/
public static final String HOMEPATH ="C:\\Program Files (x86)\\oppenoffice\\program"; //oppenoffice安装路径
public static final String FWPATH="soffice.exe -headless -accept=\"socket,host=127.0.0.1,port=8100;urp;\"-nofirststartwizard";//启动信息
}
pdf.js 浏览 rootpath = http://localhost:8020