您的位置:首页 > 编程语言 > Java开发

java将word文档转换为pdf文档

2013-12-23 11:41 627 查看
              要想通过java实现word文档转换为pdf文档,需下载一个jacob-1.17.zip文件,下载地址为: http://sourceforge.net/projects/jacob-project/ 。 

          jacob格式转换思路:打开word文档,再调用word文档中的文件另存为保存一个pdf文件。

          代码实现如下:

/**
* 下面使用jacob插件将word转换成pdf文件
* 1、jacob.jar下载地址:http://sourceforge.net/projects/jacob-project/
* 2、把jacobXXX.dll文件放在项目的根目录或者windows/system32目录下
*/
import java.io.File;

import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;

public class WordToPDF {
static final int wdFormatPDF = 17;// PDF 格式

public static void main(String[] args) {
WordToPDF.wordToPdf("C:/Users/KingPoint/Desktop/测试.doc","C:/Users/KingPoint/Desktop/测试.pdf");
}
/**
* word转pdf
* @param fromAddress 待转文件地址
* @param toAddress	新文件地址
*/
public static void wordToPdf(String fromAddress,String toAddress){
ActiveXComponent ax = null;
try {
long startTime = System.currentTimeMillis();
/*
* 创建不同的控件调用不同的值
* Word——Word.Application
* Excel——Excel.Application
* Powerpoint——Powerpoint.Application
* Outlook——Outlook.Application
* */
ax = new ActiveXComponent("Word.Application");
/*设置打开word文档不可见*/
ax.setProperty("Visible", false);
//获取Word文档中所有内容
Dispatch docs = ax.getProperty("Documents").toDispatch();
//打开word文档,并设置word为不可编辑和不需确认
Dispatch doc = Dispatch.call(docs,
"Open",
fromAddress,// FileName
false,// ConfirmConversions
true // ReadOnly
).toDispatch();

File tofile = new File(toAddress);
if (tofile.exists()) {
tofile.delete();
}
//word文件另存为pdf文件
Dispatch.call(doc,//
"SaveAs", //
toAddress, // FileName
wdFormatPDF);
//关闭word文档
Dispatch.call(doc, "Close", false);
long endTime = System.currentTimeMillis();
System.out.println("转化完成,总共耗时" + (endTime - startTime) + "ms。");
} catch (Exception e) {
System.out.println("========Error:文档转换失败:" + e.getMessage());
} finally {
if (ax != null)
ax.invoke("Quit", new Variant[]{});
}
}
}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: