java使用jacob.jar将word转pdf

 更新时间:2018年12月19日 15:16:50   作者:huanshirenjian  
这篇文章主要为大家详细介绍了java利用jacob.jar将word转pdf,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java利用jacob.jar将word转pdf的具体代码,供大家参考,具体内容如下

1.jacob.jar配置说明

JACOB 就是 JAVA-COM Bridge的缩写,提供自动化的访问com的功能,使用jacob.jar首先电脑要安装了office。
将jacob.jar jacob.jar导入到项目lib目录使用前,还要然后把jacob.bll放入C:\Windows\System32目录下,同时还要放入java/jdk/jre/bin目录下(选择bll文件的时候,如果是32位就选86,64位选64)。

2.程序代码

package core.util;
 
import java.io.File;
 
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
 
public class Word2PDF {
 static final int wdDoNotSaveChanges = 0;// 不保存待定的更改。 
 static final int wdFormatPDF = 17;// PDF 格式 
  
 public static void wordToPdf(String wordpath,String pdfpath) { 
 
   System.out.println("启动Word..."); 
   long start = System.currentTimeMillis(); 
   ActiveXComponent app = null; 
   try { 
  //打开word应用程序
     app = new ActiveXComponent("Word.Application"); 
  ////设置应用操作是文档不在明面上显示,只在后台静默处理。 
     app.setProperty("Visible", false); 
  //获得文档集合,用来操作我们需要处理的文档.
     Dispatch docs = app.getProperty("Documents").toDispatch(); 
     System.out.println("打开文档..." + wordpath); 
  //打开word文档
     Dispatch doc = Dispatch.call(docs,// 
         "Open", // 
         wordpath,// FileName 
         false,// ConfirmConversions 
         true // ReadOnly 
         ).toDispatch(); 
  
     System.out.println("转换文档到PDF..." + pdfpath); 
     File tofile = new File(pdfpath); 
  //创建存放pdf的文件夹
     if (tofile.exists()) { 
       tofile.delete(); 
     } 
  //将word另存为pdf
     Dispatch.call(doc,// 
         "SaveAs", // 
         pdfpath, // FileName 
         wdFormatPDF); 
     //关闭word文档
     Dispatch.call(doc, "Close", false); 
     long end = System.currentTimeMillis(); 
     System.out.println("转换完成..用时:" + (end - start) + "ms."); 
   } catch (Exception e) { 
     System.out.println("========Error:文档转换失败:" + e.getMessage()); 
   } finally { 
     if (app != null) 
       app.invoke("Quit", wdDoNotSaveChanges); 
   } 
 } 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Java实现网络资源的单线程下载

    Java实现网络资源的单线程下载

    这篇文章主要为大家详细介绍了如何利用Java语言实现在一个线程中完成网络资源的下载,文中的实现步骤讲解详细,感兴趣的可以尝试下
    2022-10-10
  • 关于spring aop两种代理混用的问题

    关于spring aop两种代理混用的问题

    这篇文章主要介绍了关于spring aop两种代理混用的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • SpringCloud Feign如何在远程调用中传输文件

    SpringCloud Feign如何在远程调用中传输文件

    这篇文章主要介绍了SpringCloud Feign如何在远程调用中传输文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • Java打印流原理及实例详解

    Java打印流原理及实例详解

    这篇文章主要介绍了Java打印流原理及实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • 使用java实现“钉钉微应用免登进入某H5系统首页“功能”

    使用java实现“钉钉微应用免登进入某H5系统首页“功能”

    这篇文章主要介绍了用java实现“钉钉微应用,免登进入某H5系统首页“功能”,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • java 对象的序列化和反序列化详细介绍

    java 对象的序列化和反序列化详细介绍

    这篇文章主要介绍了java 对象的序列化和反序列化的相关资料,需要的朋友可以参考下
    2016-10-10
  • Java中request对象常用方法汇总

    Java中request对象常用方法汇总

    这篇文章主要为大家详细汇总了Java中request对象的常用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • SpringBoot 整合WebSocket 前端 uniapp 访问的详细方法

    SpringBoot 整合WebSocket 前端 uniapp 访问的详细方法

    这篇文章主要介绍了SpringBoot 整合WebSocket 前端 uniapp 访问的详细方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • springboot prototype设置多例不起作用的解决操作

    springboot prototype设置多例不起作用的解决操作

    这篇文章主要介绍了springboot prototype设置多例不起作用的解决操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • Java两种方式实现动态代理

    Java两种方式实现动态代理

    Java 在 java.lang.reflect 包中有自己的代理支持,该类(Proxy.java)用于动态生成代理类,只需传入目标接口、目标接口的类加载器以及 InvocationHandler 便可为目标接口生成代理类及代理对象。我们称这个Java技术为:动态代理
    2020-10-10

最新评论