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);  
	    }  
	} 
}




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值