使用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,?
public class JacobTest {public static void wordToPDF(String docfile, String toFile,int type) { ActiveXComponent app = new ActiveXComponent("Word.Application"); // 启动word try { app.setProperty("Visible", new Variant(false)); Dispatch docs = app.getProperty("Documents").toDispatch(); Dispatch doc = Dispatch.invoke( docs, "Open", Dispatch.Method, new Object[] { docfile, new Variant(false), new Variant(true) }, new int[1]).toDispatch(); //new Variant(type),这里面的type的决定另存为什么类型的文件 Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] { toFile, new Variant(type) }, new int[1]); Variant f = new Variant(false); Dispatch.call(doc, "Close", f); } catch (Exception e) { e.printStackTrace(); } finally { app.invoke("Quit", new Variant[] {}); } } public static void main(String[] args) {//源文件全路径String docfile ="D:\\服务实施描述报告(企业门户).docx";for (int i = 0; i < 18; i++) {//些路径test为实际存在的目录,s后面为要另存为的文件名String toFile="d:\\test\\s"+i;wordToPDF(docfile, toFile,i);}}}