首页 > 代码库 > java实现MsOffice文档向pdf文档转化

java实现MsOffice文档向pdf文档转化

本篇文档实现功能,将word文档的文件转化成pdf格式的文档

 

第一步:下载压缩包

1jacob官网下载jacob压缩包

2)网址:http://sourceforge.net/projects/jacob-project/

 

 

第二步:配置环境并导入jar

 1)将下载好的压缩包解压

 (2)将jacob.jar包导入项目中

 (3)将jacob-1.18-M2-x64.dlljacob-1.18-M2-x86.dll文件复制粘贴到jdk安装目录bin目录下,jdk安装目录jrebin目录下,系统盘C:\Windows\System32目录下。

 

 

第三步:调用MsOffice2Pdf类的静态方法,实现MsOffice文档转换。

 

MsOffice2Pdf类的源代码

 

 1 package com.bjsxt.shangxiaofei; 2  3 import com.jacob.activeX.ActiveXComponent; 4 import com.jacob.com.Dispatch; 5  6 public class MsOffice2Pdf { 7      8     /** 9      * 将指定路径的word文档转换成指定路径的pdf文档10      * 此处路径为绝对路径11     * @Title: word2PDF 12     * @Description: TODO(这里用一句话描述这个方法的作用) 13     * @param inputFile14     * @param pdfFile15     * @return void    返回类型 16     * @author 尚晓飞17     * @date 2014-8-15 上午10:25:4718      */19     public static void word2PDF(String inputFile,String pdfFile){20         //打开word应用程序21         ActiveXComponent app = new ActiveXComponent("Word.Application");22         //设置word不可见23         app.setProperty("Visible", false);24         //获得word中所有打开的文档,返回Documents对象25         Dispatch docs = app.getProperty("Documents").toDispatch();26         //调用Documents对象中Open方法打开文档,并返回打开的文档对象Document27         Dispatch doc = Dispatch.call(docs,28                                     "Open",29                                     inputFile,30                                     false,31                                     true32                                     ).toDispatch();33         //调用Document对象的SaveAs方法,将文档保存为pdf格式34         /*35         Dispatch.call(doc,36                     "SaveAs",37                     pdfFile,38                     wdFormatPDF        //word保存为pdf格式宏,值为1739                     );40                     */41         Dispatch.call(doc,42                 "ExportAsFixedFormat",43                 pdfFile,44                 17        //word保存为pdf格式宏,值为1745                 );46         47         48         //关闭文档49         Dispatch.call(doc, "Close",false);50         //关闭word应用程序51         app.invoke("Quit", 0);52         53     }54     55     56 57 }
View Code