打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用jacob将word转成PDF

整体思路参考http://www.iteye.com/topic/588050

 

上面的这篇文章使用jacob将word转换成HTML的,利用的是Word的另存为功能,在Office 2007 SP2之后,Office就可以另存为PDF了,可以使用这个方法将office另存为PDF文档。

 

具体代码可以参考上文里面的,另存为哪种类型是由new variant()里面的参数决定的。

 

            Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {htmlfile, new Variant(WORD_HTML) }, new int[1]);  

new Variant(),这里面的根据传入的参数不同,可以另存为不同的类型,但是在网上搜索了一个并没有找到有关这个参数类型的一个说明,自己尝试了一下,结果如下:

 

 

0

Doc

1

Dot

2-5

Txt

6

Rtf

7

Txt

8、10

htm

11

Xml

12、16

Docx

13

Docm

14

Dotx

15

Dotm

17

Pdf

 

我使用的是office 2010,不同版本的对应的应该不一样,我是写了这一小段程序来测试另存为的类型的。

 

Java代码  
  1. public class JacobTest {  
  2.     public static void wordToPDF(String docfile, String toFile,int type) {    
  3.         ActiveXComponent app = new ActiveXComponent("Word.Application"); // 启动word    
  4.         try {    
  5.             app.setProperty("Visible", new Variant(false));    
  6.             Dispatch docs = app.getProperty("Documents").toDispatch();    
  7.             Dispatch doc = Dispatch.invoke(    
  8.                     docs,    
  9.                     "Open",    
  10.                     Dispatch.Method,    
  11.                     new Object[] { docfile, new Variant(false),    
  12.                             new Variant(true) }, new int[1]).toDispatch();    
  13.             //new Variant(type),这里面的type的决定另存为什么类型的文件  
  14.             Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {    
  15.                     toFile, new Variant(type) }, new int[1]);    
  16.             Variant f = new Variant(false);    
  17.             Dispatch.call(doc, "Close", f);    
  18.         } catch (Exception e) {    
  19.             e.printStackTrace();    
  20.         } finally {    
  21.             app.invoke("Quit", new Variant[] {});    
  22.         }    
  23.     }    
  24.       
  25.     public static void main(String[] args) {  
  26.         //源文件全路径  
  27.         String docfile ="D:\\服务实施描述报告(企业门户).docx";  
  28.         for (int i = 0; i < 18; i++) {     
  29.             //些路径test为实际存在的目录,s后面为要另存为的文件名  
  30.             String toFile="d:\\test\\s"+i;  
  31.             wordToPDF(docfile, toFile,i);  
  32.         }         
  33.     }  
  34. }  
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
java转换word为htm文件并嵌入jsp页面
用Java巧把Word转换成Html文件
PDF转Word怎么转 多种方法可实现 violet的馨驻客栈
利用word将PDF转换DOC文件的方法 --电脑高手
java call Excel Macro
Java程序实现Word文档转为pdf以及出现的问题解决
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服