java oppenoffice+jodconverter-2.2.2.zip+pdf.js在线浏览文档

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

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值