`

jacob office转pdf

阅读更多

     注意调用前一定要先安装office,然后将附件对应的jar包拷贝至tomcat或者项目lib目录,再将附件中对应系统的dll文件拷贝至系统system32目录,然后调用时穿入转换前的文件路径和转换后的文件路径即可

 

public boolean word2PDF(String inputFile, String pdfFile) {
		try {
			// 打开word应用程序
			ActiveXComponent app = new ActiveXComponent("Word.Application");
			// 设置word不可见
			app.setProperty("Visible", false);
			// 获得word中所有打开的文档,返回Documents对象
			Dispatch docs = app.getProperty("Documents").toDispatch();
			// 调用Documents对象中Open方法打开文档,并返回打开的文档对象Document
			Dispatch doc = Dispatch.call(docs, "Open", inputFile, false, true).toDispatch();
			// 调用Document对象的SaveAs方法,将文档保存为pdf格式
			/*
			 * Dispatch.call(doc, "SaveAs", pdfFile, wdFormatPDF
			 * //word保存为pdf格式宏,值为17 );
			 */
			Dispatch.call(doc, "ExportAsFixedFormat", pdfFile, wdFormatPDF // word保存为pdf格式宏,值为17
			);
			// 关闭文档
			Dispatch.call(doc, "Close", false);
			// 关闭word应用程序
			app.invoke("Quit", 0);
			return true;
		} catch (Exception e) {
			return false;
		}
	}

	public boolean excel2PDF(String inputFile, String pdfFile) {
		try {
			ActiveXComponent app = new ActiveXComponent("Excel.Application");
			app.setProperty("Visible", false);
			Dispatch excels = app.getProperty("Workbooks").toDispatch();
			Dispatch excel = Dispatch.call(excels, "Open", inputFile, false, true).toDispatch();
			Dispatch.call(excel, "ExportAsFixedFormat", xlTypePDF, pdfFile);
			Dispatch.call(excel, "Close", false);
			app.invoke("Quit");
			return true;
		} catch (Exception e) {
			return false;
		}

	}

	public boolean ppt2PDF(String inputFile, String pdfFile) {
		try {
			ActiveXComponent app = new ActiveXComponent("PowerPoint.Application");
			// app.setProperty("Visible", msofalse);
			Dispatch ppts = app.getProperty("Presentations").toDispatch();

			Dispatch ppt = Dispatch.call(ppts, "Open", inputFile, true, // ReadOnly
					true, // Untitled指定文件是否有标题
					false// WithWindow指定文件是否可见
			).toDispatch();

			Dispatch.call(ppt, "SaveAs", pdfFile, ppSaveAsPDF);

			Dispatch.call(ppt, "Close");

			app.invoke("Quit");
			return true;
		} catch (Exception e) {
			LogUtil.errorlog(this.getClass(), e);
			return false;
		}
	}

 

分享到:
评论

相关推荐

    使用jacob转换office为PDF

    "使用jacob转换office为PDF"是解决这一问题的一种方法。JACOB(Java COM Bridge)是一个Java库,它允许Java应用程序与COM(Component Object Model)组件进行交互。在这个场景中,JACOB被用来调用Microsoft Office的...

    Java 使用 jacob 将office中 word excel ppt 转成pdf

    资源中包括工具类、jacob.jar和jacob-1.18-x64.dll(64位)、jacob-1.18-x86.dll(32位) 在使用jacob时,我们需要将jacob-1.18-x64.dll或jacob-1.18-x86.dll放到jdk的bin目录下或者jdk/jre的bin目录下才可以使用。

    Jacob实现word转PDF之格式最美转化

    在这个场景中,我们使用Jacob来实现Word文档到PDF的转换,以保持格式的一致性和美观性。在转换过程中,确保你的计算机上已经安装了Office 2010或更高版本,因为较低版本可能无法支持某些功能,导致转换失败或出现...

    Jacob Word excel 转PDF 合并PDF文件

    标题提到的"Jacob Word excel 转PDF 合并PDF文件"是指使用Jacob库来将Microsoft Word和Excel文档转换为PDF格式,并进一步合并多个PDF文件。Jacob(Java Advanced COM Bridge)是一个Java库,它允许Java应用程序与...

    java 使用jacob Word转PDF 完美格式

    总结起来,Java通过Jacob库和Microsoft Office的插件实现Word到PDF的转换是一种有效的方法,特别是当需要保持格式一致性时。然而,这种方法需要在运行环境中安装Office,并且可能受到Office版本限制。在实际开发中,...

    jacob1.7操作OFFICE转PDF

    "jacob1.7操作OFFICE转PDF"这个主题涉及到一个名为JACOB (Java COM Bridge) 的Java库,它允许Java应用程序与COM组件进行交互。在这个场景下,JACOB被用来调用Microsoft Office的COM接口来实现Office文档向PDF的转换...

    jacob-1.19-office转pdf所需资源

    该资源在java-web开发在线浏览文档功能中可以用到,该资源可将office文档转换成pdf文档,转换兼容office2003(doc、xls、ppt)和office2007(doc、xlsx、pptx),将该资源解压后,需要将jacob-1.19-x86.dll和jacob-...

    使用jacob转pdf资料

    "使用jacob转pdf资料"这个主题涉及到一个名为jacob的Java库,它允许开发者通过Java代码来调用Microsoft Office或WPS组件,实现各种文档格式之间的转换。 首先,jacob(Java COM Bridge)是一个开源的Java库,它的...

    java实现office、wps转pdf,pdf转word

    标题“java实现office、wps转pdf,pdf转word”指的是利用Java编程来实现在不同办公文档格式间的转换,特别是从Microsoft Office和WPS格式转换为PDF,以及从PDF反向转换为Word文档。 首先,让我们讨论从Office和WPS...

    Jacob_office_to_pdf

    【Jacob_office_to_pdf】是一个基于Java的工具,利用Jacob库实现了将Microsoft Office文档(如Word、Excel)转换为PDF格式的功能。Jacob是一个Java和COM(Component Object Model)接口的桥梁,使得Java应用程序能够...

    java使用jacob将word 转pdf

    在Java中利用JACOB库实现Word文档转PDF功能时,首先需要完成必要的环境配置工作。 ##### 1. JACOB库介绍 JACOB(Java COM Bridge)是一个开放源代码的Java类库,用于Java程序与Windows平台下的COM对象进行交互。...

    java实现office转pdf.zip

    "java实现office转pdf.zip"这个压缩包包含了2019年7月20日某个项目中的代码,其主要功能就是将Office文件转换成PDF格式,而且是基于JDK1.8和一个名为JACOB的库来实现的。 **JACOB库介绍** JACOB(Java COM Bridge)...

    jacob操作word转换成pdf

    在这个场景中,我们将讨论如何利用JACOB将Word文档转换为PDF。 首先,我们需要理解JACOB的工作原理。JACOB是通过Java的JNI(Java Native Interface)来调用COM接口的,这样就可以在Java代码中直接操纵COM对象,例如...

    jacob操作WPS、Office对应Word、Excel、PPT生成PDF

    jacob操作WPS、Office对应Word、Excel、PPT生成PDF,采用版本为jaco1.7X。

    jacob、GhostScript转换Office为pdf,转换pdf为高清图片

    1、Windows下的几近完美的word、ppt、excel 转为pdf,pdf转为高清图片的解决方案。 2、包含完全实现的demo代码,经过多次调试。 3、使用技术jacob、GhostScript。

    利用Jacob 实现了word转PDF

    以下是对利用Jacob实现Word转PDF的详细说明: 1. **Jacob库介绍**: Jacob是一个Java到COM桥接器,它使得Java开发者能够使用COM组件,如Microsoft Office的Word应用,来执行特定的任务。Jacob通过JNI(Java Native...

    jacob的excel转pdf

    "jacob的excel转pdf"项目提供了一种解决方案,它可能利用了Java的Jacob库来实现这个功能。以下是对这个主题的详细解释。 Jacob(Java Object for Accessing COM)是一个开源Java库,允许Java程序与COM(Component ...

    office转pdf

    总结一下,"Office转PDF"的Java实现主要依赖于Jacob库,通过COM接口与Office应用程序交互。开发者需要理解如何加载和使用DLL,以及如何通过Jacob提供的Java接口调用Office的自动化功能。对于非Windows环境或者对跨...

    jacob-excel转pdf.zip

    "jacob-excel转pdf.zip"这个压缩包文件显然提供了一个解决方案,使用JACOB库来完成这个转换。JACOB(Java Advanced COM Bridge)是一个Java到COM桥接库,允许Java程序调用COM组件,如Microsoft Office应用程序,来...

Global site tag (gtag.js) - Google Analytics