1. 下载 openoffice 地址

https://pan.baidu.com/s/1dfpoG6zlawoW1pqpDvBL0A 密码: v4ej

如果上面的地址无法访问请访问这个地址:下载地址如下:http://www.openoffice.org/

2. jodconverter-2.2.2.zip 下载地址:

http://sourceforge.net/projects/jodconverter/files/JODConverter/

3.  JODConverter 下的jar包访问项目lib包中。

4.  使用openoffice的工具类

package com.rdkl.utils;

import java.io.File;

import org.apache.commons.io.FilenameUtils;

import org.apache.log4j.Logger;

import org.artofsolving.jodconverter.OfficeDocumentConverter;

import org.artofsolving.jodconverter.office.DefaultOfficeManagerConfiguration;

import org.artofsolving.jodconverter.office.ExternalOfficeManagerConfiguration;

import org.artofsolving.jodconverter.office.OfficeException;

import org.artofsolving.jodconverter.office.OfficeManager;

import com.ddyun.imooc.common.SysConfigManager;

public class PdfUtils {

private static final Logger logger = Logger.getLogger(PdfUtils.class

.getName());

@SuppressWarnings("static-access")

private static String officeHome = "这里写的是你的openoffice的安装地址";

@SuppressWarnings("static-access")

private static int port = "这里的内容是根据你的系统选择不同的端口号,windows系统的端口号是8100";

private static OfficeManager officeManager;

// 尝试连接已存在的服务器

private static boolean reconnect(){

try {

// 尝试连接openoffice的已存在的服务器

ExternalOfficeManagerConfiguration externalProcessOfficeManager = new ExternalOfficeManagerConfiguration();

externalProcessOfficeManager.setConnectOnStart(true);

externalProcessOfficeManager.setPortNumber(8100);

officeManager = externalProcessOfficeManager.buildOfficeManager();

officeManager.start();

return true;

} catch (OfficeException e) {

e.printStackTrace();

return false;

}

}

// 开启新的openoffice的进程

private static void start() {

logger.debug("启动OpenOffice服务");

try {

DefaultOfficeManagerConfiguration configuration = new DefaultOfficeManagerConfiguration();

configuration.setOfficeHome(officeHome);// 安装地址

configuration.setPortNumbers(port);// 端口号

configuration.setTaskExecutionTimeout(1000 * 60 * 5);// 设置任务执行超时为5分钟

configuration.setTaskQueueTimeout(1000 * 60 * 60 * 24);// 设置任务队列超时为24小时

officeManager = configuration.buildOfficeManager();

officeManager.start(); // 启动服务

} catch (Exception e) {

logger.error("启动OpenOffice服务出错" + e);

}

}

// 使用完需要关闭该进程

private static void stop() {

logger.debug("关闭OpenOffice服务");

try {

if (officeManager != null)

officeManager.stop();

} catch (Exception e) {

logger.error("关闭OpenOffice服务出错" + e);

}

}

public static File convertToPdf(String input) {

File inputFile = null;

File outFile = null;

try {// 如果已存在的服务不能连接或者不存在服务,那么开启新的服务if(!reconnect()){

start();// 开启服务}// filenameUtils是Apache对java io的封装。FilenameUtils.separatorsToSystem:转换分隔符为当前系统分隔符 / FilenameUtils.getFullPath:获取文件的完整目录

// FilenameUtils.getBaseName:取出文件目录和后缀名的文件名

String output = FilenameUtils.separatorsToSystem(FilenameUtils.getFullPath(input) + FilenameUtils.getBaseName(input) + ".pdf");

inputFile = new File(input);

outFile = new File(output);

logger.info("开始转换文档:" + input + "=>" + output);

OfficeDocumentConverter converter = new OfficeDocumentConverter(officeManager);

converter.convert(inputFile,outFile); // 转换文档} catch (Exception e) {

logger.error("转换文档出错" + e);

outFile = null;

}finally{

logger.info("结束转换文档");

stop();

}

return outFile;

}     // 测试工具类是否成功

public static void main(String[] args) {

//PdfUtils.convertToPdf("E:/test.ppt");

File sf = new File("E:/test.ppt");System.out.println(sf.getPath());

}

}

原文:https://www.cnblogs.com/bb1008/p/10019576.html

java word openoffice_java 使用openoffice 转换文档,成.pdf,实现在线预览效果相关推荐

  1. Java通过openOffice实现word,excel,ppt转成pdf实现在线预览

    Java通过openOffice实现word,excel,ppt转成pdf实现在线预览 一.OpenOffice 1.1 下载地址 1.2 JodConverter 1.3 新建实体类PDFDemo ...

  2. java将office文档,word,ppt,pdf文档转换成swf文件在线预览

    java将office文档pdf文档转换成swf文件在线预览 第一步,安装openoffice.org openoffice.org是一套sun的开源office办公套件,能在widows,linux ...

  3. Java 实现word、excel、ppt、txt等办公文件在线预览功能!

    大家好,我是宝哥! 如何用 Java 实现word.excel.ppt.txt等办公文件在线预览功能?本文告诉你答案! java 实现办公文件在线预览功能是一个大家在工作中也许会遇到的需求,网上些公司 ...

  4. 手把手教你用 Java 实现word、excel、ppt、txt等办公文件在线预览功能!

    如何用 Java 实现word.excel.ppt.txt等办公文件在线预览功能?本文告诉你答案! java 实现办公文件在线预览功能是一个大家在工作中也许会遇到的需求,网上些公司专门提供这样的服务, ...

  5. java flexpaper_java web word文件 pdf文件在线预览源码(flexpaper)

    [实例简介]java web word文件 pdf文件在线预览源码 经过测试 [实例截图] [核心代码] BrowsenOnline html, body{ height:100%; } body { ...

  6. 快速实现word、excel、ppt、txt等办公文件在线预览功能(Java版)

    点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/weixin_40986713/ article/details/109527294 java实现办公文件在线预览功能是一个大家 ...

  7. 使用PageOffice实现文档(word,excel,pdf)在线预览编辑

    最近发现一款不错的插件的PageOffice,地址是:http://www.zhuozhengsoft.com/Technical/ 他可以实现word,excel.pdf在线预览以及在线编辑.虽然商 ...

  8. html怎么转换到百度,类似百度文库在线预览文档flash版(支持word、excel、ppt、pdf)+在线预览文档html版...

    类似百度文库在线预览文档flash版(支持word.excel.ppt.pdf)+在线预览文档html版 (1).将文档转换为html,只支持支持office文档 (2).将文档转换为flash,实现 ...

  9. JAVA实现FTP服务器上文件上传下载以及文件在线预览

    (一)介绍文件上传下载: (1)前端思路: 用formData封装好file以及相关参数,然后l利用ajax请求往后台传数据 html的代码:<input id="cm_file&qu ...

最新文章

  1. 大数据目标检测推理管道部署
  2. html中事件处理中的this和event对象
  3. 用表格布局2个链接6个图片
  4. Android 控件之RatingBar评分条(五星)自定义样式
  5. 一个绚丽的loading动效分析与实现!
  6. MyBatis generator 使用方式 小结
  7. GeoServer地图开发解决方案(二):地图数据处理篇
  8. openCV视频教程
  9. 3dmax一键展uv_3Dmax批量展开场景物体的第二套UV
  10. Android 暗黑模式
  11. Vue项目实战05:18n实现多语言自动切换-浏览器语言设置
  12. 你对自己的定位是什么,就能成为什么样的人(转)
  13. Python基础综合
  14. 拜拜了Unable to connect to remote host. Catalog download has failed.您嘞
  15. 云计算基础之如何学习云计算?
  16. 原生JS实现弹幕的简单操作速成
  17. cobaltstrike如何安装使用(包含CS联动MSF详细用法!)? (゚益゚メ) 渗透测试
  18. 阿里大S,强推,接口测试之必会接口加密类型
  19. php 转换成string,在PHP中将数字(1,2,3)转换为string(一,二,三)
  20. 老男孩读PCIe之一:从PCIe速度说起

热门文章

  1. 原生js实现ajax的文件异步提交功能、图片预览功能.实例
  2. 自学习 与 无监督特征学习
  3. 解决 WIn7 启动时“你有等待写入光盘的文件”
  4. SNMP在企业网中应用
  5. Silverlight实例教程 - Out of Browser在线更新和Silent安装
  6. Spring: DispacherServlet和ContextLoaderListener中的WebApplicationContext的关系
  7. Oracle WebLogic 最新补丁的绕过漏洞分析 cve-2020-2883
  8. linux socket recv函数 MSG_PEEK标志介绍
  9. wireshark协议解析器 源码分析 封装调用
  10. /usr/bin/ld 搜索路径顺序