java 使用jacob实现word转pdf
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相关推荐
- java使用jacob实现word转pdf
背景:日常开发ERP系统,会有一些工单或者合同之类需要填写打印.我们就会将其word模板来通过系统自动化填写并转换为PDF格式(PDF文件打印可保证文件质量,是一种通用的格式.文件不易去修改,比较稳定 ...
- java 使用jacob实现word、excle、ppt、图片转pdf
java 使用jacob实现word.excle.ppt.图片转pdf IDEA Maven 微服务项目示例 示例: 步骤: 1.jarcob jar包.插件下载 SaveAsPDFandXPS 下载 ...
- JAVA使用jacob判断word附件是否加密
java判断word附件是否加密和word转换pdf JAVA使用jacob判断word附件是否加密 JAVA使用jacob判断word附件是否加密 String overFile pdf输出路径 S ...
- Java使用aopse实现word转换pdf
Java使用aopse实现word转换pdf 需要引用aspose包,引入操作我写了一个博客,地址如下 https://blog.csdn.net/weixin_46713508/article/de ...
- Java实现Excel和word转pdf加水印,复制及可用
Java实现Excel和word转pdf加水印,复制及可用 时隔大半年,之前朋友,今天突然找我说,他们有个需求要做这东西.想起来之前自己照着官方文档写,也走了不少坑.今天就索性写个,也为了方便以后使用 ...
- 关于使用jacob插件word转pdf异常问题
Windows系统使用Jacob插件word转pdf,项目部署到tomcat,使用tomcat的启动文件,启动tomcat工具转pdf正常,将tomcat做成系统服务后,在系统服务启动,出现转pdf异 ...
- java使用jacob操作word添加图片
1.操作word需要的jacobjar包和dll文件.(请多多支持!) java使用jacob给word添加水印.这是给word添加水印,当业务需求在多页word文档中,某一页添加水印一样的盖章,这个 ...
- Java使用XDOC实现word,pdf等格式的生成及转换
Java使用XDOC实现word,pdf等格式的生成及转换 最近业务上有个需求,要将生成的简报以word或者pdf等格式下载下来 刚开始我设想的是用io流的方法直接写,但是这样无疑是比较麻烦的 直到我 ...
- 总结java关于jacob操作word这几天遇到的问题!
由于这几天的客户需求使用到了java关于jacob操作word的问题,下面对这几天遇到的问题进行一下总结: 本机第一次使用jacob的时候,本机装的WPS接下来一路畅通,直到最后完成word的导出功能 ...
最新文章
- [Win7]如何还原[.bat]文件关联
- 李昱:百度产品登录协议介绍
- linux下配置环境变量【原创】
- linux传输文件到linux速度慢,linux中往nand(jffs2)中拷贝文件时速度慢的问题
- boost::phoenix::find相关的测试程序
- dedecms后台左侧菜单空白不显示怎么处理
- 【模板】最大流之上下界可行流
- Installation failed, deleting ./composer.json.安装phpunit报错解决方案
- python求50的阶乘_python中求阶乘
- global http proxy configuration on ubuntu
- cmd 新建文件和新建文件夹
- Ubuntu 系列学习(四)ubuntu 22.04 安装 微信、QQ
- Swift学习几天就会写项目
- 电力系统暂态稳定性仿真 matlab/simulink 仿真模型+设计报告
- Android webview调用本地文件选择失败解决
- 关于灵魂,意识,自我和死亡
- 抖音测试距离的软件,抖音同款距离测量仪
- mac升级php后旧版本还在,老版本mac如何升级系统
- powershell ssh-agent 无法工作
- Franklin C-51语言程序设计基础