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文档,再调用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[]{}); } } }
相关文章推荐
- 关于Calendar类的日与月
- Java入门:缓冲区溢出编程心得
- Java获取数据库自增主键表中插入数据的ID
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
- Eclipse导入Android项目的正确方法
- struts2从form取值的三种方式
- JAVA深度剖析之JVM的体系结构
- Java的byte数组
- 有关java.lang.ClassFormatError: Truncated class file错误
- struts2 表单验证 - action类中的validate()函数
- eclipse SVN插件
- Spring 接管action的好处
- Struts2表单基本验证
- Struts 2 常量配置文件详解
- Eclipse中如何修改SVN的地址
- javamail简单文本发送代码及注释
- 使用struts的标签获取后台值需注意
- Eclipse下svn的创建分支/合并/切换使用
- Java--线程--线程控制,线程安全,线程同步,线程等待,线程交互,死锁,互斥锁,读写锁
- javamail开发报错Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util