java 使用jacob实现word转pdf(IDEA Maven项目)

步骤:

一、 插件与jar包下载

SaveAsPDFandXPS 下载地址:
http://www.microsoft.com/zh-cn/download/details.aspx?id=7
(若访问不了,百度搜索SaveAsPDFandXPS)
jacob 包下载地址:
http://sourceforge.net/projects/jacob-project/

二、安装插件SaveAsPDFandXPS (本例好像不安装也可以)

如要安装,百度搜索SaveAsPDFandXPS,安装即可

三、jacob jar包和dll存放路径

.下载 jacob 解压后存放路径:
 jacob.jar 放在 C:\Program Files\Java\jdk1.8.0_171\jre\lib\ext目录下
jacob.dll 放在 C:\Program Files\Java\jdk1.8.0_171\jre\bin 目录下

四、 项目里src/main/resource/lib 下放jar包

五、pom文件中添加依赖

<dependency><groupId>com.jacob</groupId><artifactId>jacob</artifactId><version>1.20</version><scope>system</scope><systemPath>${basedir}/src/main/resources/lib/jacob.jar</systemPath>
</dependency>

六、实现类

import java.io.File;import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.ComThread;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;/*** 效果最好的一种方法,但是需要 window 环境,而且速度是最慢的需要安装 msofficeWord 以及 SaveAsPDFandXPS.exe (* word 的一个插件,用来把 word 转化为 pdf,可以不用安装,本次未安装测试通过 )****/
public class WordToPdf {private static final int wdFormatPDF = 17; // PDF 格式public void wordToPDF(String sfileName, String toFileName) {System.out.println("启动 Word...");long start = System.currentTimeMillis();ActiveXComponent app = null;Dispatch doc = null;try {app = new ActiveXComponent("Word.Application");app.setProperty("Visible", new Variant(false));Dispatch docs = app.getProperty("Documents").toDispatch();doc = Dispatch.call(docs, "Open", sfileName).toDispatch();System.out.println("打开文档..." + sfileName);System.out.println("转换文档到 PDF..." + toFileName);File tofile = new File(toFileName);if (tofile.exists()) {tofile.delete();}Dispatch.call(doc, "SaveAs", toFileName, // FileNamewdFormatPDF);long end = System.currentTimeMillis();System.out.println("转换完成..用时:" + (end - start) + "ms.");} catch (Exception e) {System.out.println("========Error:文档转换失败:" + e.getMessage());} finally {Dispatch.call(doc, "Close", false);System.out.println("关闭文档");if (app != null)app.invoke("Quit", new Variant[] {});}// 如果没有这句话,winword.exe进程将不会关闭ComThread.Release();}public static void main(String[] args) {WordToPdf d = new WordToPdf();d.wordToPDF("F:/Word转PDF/复杂的word.docx", "F:/Word转PDF/复杂的word.pdf");}}

七、结果

成功。。。

java 使用jacob实现word转pdf相关推荐

  1. java使用jacob实现word转pdf

    背景:日常开发ERP系统,会有一些工单或者合同之类需要填写打印.我们就会将其word模板来通过系统自动化填写并转换为PDF格式(PDF文件打印可保证文件质量,是一种通用的格式.文件不易去修改,比较稳定 ...

  2. java 使用jacob实现word、excle、ppt、图片转pdf

    java 使用jacob实现word.excle.ppt.图片转pdf IDEA Maven 微服务项目示例 示例: 步骤: 1.jarcob jar包.插件下载 SaveAsPDFandXPS 下载 ...

  3. JAVA使用jacob判断word附件是否加密

    java判断word附件是否加密和word转换pdf JAVA使用jacob判断word附件是否加密 JAVA使用jacob判断word附件是否加密 String overFile pdf输出路径 S ...

  4. Java使用aopse实现word转换pdf

    Java使用aopse实现word转换pdf 需要引用aspose包,引入操作我写了一个博客,地址如下 https://blog.csdn.net/weixin_46713508/article/de ...

  5. Java实现Excel和word转pdf加水印,复制及可用

    Java实现Excel和word转pdf加水印,复制及可用 时隔大半年,之前朋友,今天突然找我说,他们有个需求要做这东西.想起来之前自己照着官方文档写,也走了不少坑.今天就索性写个,也为了方便以后使用 ...

  6. 关于使用jacob插件word转pdf异常问题

    Windows系统使用Jacob插件word转pdf,项目部署到tomcat,使用tomcat的启动文件,启动tomcat工具转pdf正常,将tomcat做成系统服务后,在系统服务启动,出现转pdf异 ...

  7. java使用jacob操作word添加图片

    1.操作word需要的jacobjar包和dll文件.(请多多支持!) java使用jacob给word添加水印.这是给word添加水印,当业务需求在多页word文档中,某一页添加水印一样的盖章,这个 ...

  8. Java使用XDOC实现word,pdf等格式的生成及转换

    Java使用XDOC实现word,pdf等格式的生成及转换 最近业务上有个需求,要将生成的简报以word或者pdf等格式下载下来 刚开始我设想的是用io流的方法直接写,但是这样无疑是比较麻烦的 直到我 ...

  9. 总结java关于jacob操作word这几天遇到的问题!

    由于这几天的客户需求使用到了java关于jacob操作word的问题,下面对这几天遇到的问题进行一下总结: 本机第一次使用jacob的时候,本机装的WPS接下来一路畅通,直到最后完成word的导出功能 ...

最新文章

  1. [Win7]如何还原[.bat]文件关联
  2. 李昱:百度产品登录协议介绍
  3. linux下配置环境变量【原创】
  4. linux传输文件到linux速度慢,linux中往nand(jffs2)中拷贝文件时速度慢的问题
  5. boost::phoenix::find相关的测试程序
  6. dedecms后台左侧菜单空白不显示怎么处理
  7. 【模板】最大流之上下界可行流
  8. Installation failed, deleting ./composer.json.安装phpunit报错解决方案
  9. python求50的阶乘_python中求阶乘
  10. global http proxy configuration on ubuntu
  11. cmd 新建文件和新建文件夹
  12. Ubuntu 系列学习(四)ubuntu 22.04 安装 微信、QQ
  13. Swift学习几天就会写项目
  14. 电力系统暂态稳定性仿真 matlab/simulink 仿真模型+设计报告
  15. Android webview调用本地文件选择失败解决
  16. 关于灵魂,意识,自我和死亡
  17. 抖音测试距离的软件,抖音同款距离测量仪
  18. mac升级php后旧版本还在,老版本mac如何升级系统
  19. powershell ssh-agent 无法工作
  20. Franklin C-51语言程序设计基础

热门文章

  1. 入手评测 联想小新Pro 16怎么样?
  2. Topy Desk Privacy Policy
  3. x-frame-options、iframe与iframe的一些操作
  4. Ti 官方文档阅读笔记
  5. 【计算机网络】网络通信协议
  6. 2021年全国大学生电子设计大赛(一)赛题解析与预测
  7. python编程写完需要几年驾龄_编程小白怎么学Python,大概要多久才能学好?
  8. 招行股东会通过收购永隆银行议案
  9. 安装hg版本管理工具
  10. 基于web的商场商城后台管理系统