- 浏览: 196464 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
chmadmin:
求源码,参考下
Extjs做的一个图书管理系统(详细解析) -
wilddonkey:
lz,我现在自定义了转换器,但是如果输入为空,则自动跳过,虽然 ...
struts2-ognl.MethodFailedException: Method "setId" failed for object -
accpchf:
/** * 懒汉式, * 既有延迟加载功能又能保证线程安全, ...
J2EE面试题集锦(附答案) -
accpchf:
java编程第三题明显错误 A ab = new B(); ...
J2EE面试题集锦(附答案) -
风雨故都:
求源码。参考一下
Extjs做的一个图书管理系统(详细解析)
我的word转pdf用到了一个虚拟的打印机,安装一个Adobe Acrobat 7.0 Professional就可以了
2。配置虚拟打印机,开始--打印机和传真--添加打印机---一步一步的配置就行了。
3。点击配置的打印机右键首选项----设置----把不要发送字体到打印机取消勾选
4。下载Jacob.jar包。把jacob.jar所对应的Jacob.dll放在windows/sys32下或者jre/bin下
5。代码部分
代码
package demo; import java.io.File; import com.jacob.activeX.ActiveXComponent; import com.jacob.com.ComThread; import com.jacob.com.Dispatch; import com.jacob.com.Variant; /* * 注意word转pdf要安装虚拟打印机,且要配置 * 使用jacob框架,把dll文件放到jre/bin目录下 */ public class WordToPdf { private ActiveXComponent wordCom = null; private Object wordDoc = null; private final Variant False = new Variant(false); private final Variant True = new Variant(true); /** * 打开word文档 * * @param filePath word文档 * @return 返回word文档对象 */ public boolean openWord(String filePath) { //建立ActiveX部件 wordCom = new ActiveXComponent("Word.Application"); try { //返回wrdCom.Documents的Dispatch Dispatch wrdDocs = wordCom.getProperty("Documents").toDispatch(); //调用wrdCom.Documents.Open方法打开指定的word文档,返回wordDoc wordDoc = Dispatch.invoke(wrdDocs, "Open", Dispatch.Method, new Object[] { filePath }, new int[1]).toDispatch(); return true; } catch (Exception ex) { ex.printStackTrace(); } return false; } /** * 关闭word文档 */ public void closeWord(boolean saveOnExit) { if (wordCom!=null) { //关闭word文件 //Dispatch.call(wordDoc, "Close", new Variant(saveOnExit)); wordCom.invoke("Quit",new Variant[]{}); //wordCom.invoke("Quit",new Variant[0]); wordCom=null; //释放在程序线程中引用的其它com,比如Adobe PDFDistiller ComThread.Release(); } } /** * 将word文档打印为PS文件后,使用Distiller将PS文件转换为PDF文件 * * @param sourceFilePath * 源文件路径 * @param destinPSFilePath * 首先生成的PS文件路径 * @param destinPDFFilePath * 生成PDF文件路径 */ public void docToPDF(String sourceFilePath, String destinPSFilePath, String destinPDFFilePath) { if (!openWord(sourceFilePath)) { closeWord(true); return; } //建立Adobe Distiller的com对象 ActiveXComponent distiller = new ActiveXComponent("PDFDistiller.PDFDistiller.1"); try { //设置当前使用的打印机,我的Adobe Distiller打印机名字为 "Adobe PDF" wordCom.setProperty("ActivePrinter", new Variant("Adobe PDF")); //设置printout的参数,将word文档打印为postscript文档。现在只使用了前5个参数,假如要使用更多的话可以参考MSDN的office开发相关api //是否在后台运行 Variant Background = False; //是否追加打印 Variant Append = False; //打印所有文档 int wdPrintAllDocument = 0; Variant Range = new Variant(wdPrintAllDocument); //输出的postscript文件的路径 Variant OutputFileName = new Variant(destinPSFilePath); Dispatch.callN((Dispatch) wordDoc, "PrintOut", new Variant[] { Background, Append, Range, OutputFileName }); System.out.println("由word文档打印为ps文档成功!"); //调用Distiller对象的FileToPDF方法所用的参数,具体内容参考Distiller Api手册 //作为输入的ps文档路径 Variant inputPostScriptFilePath = new Variant(destinPSFilePath); //作为输出的pdf文档的路径 Variant outputPDFFilePath = new Variant(destinPDFFilePath); //定义FileToPDF方法要使用adobe pdf设置文件的路径,在这里没有赋值表示并不使用pdf配置文件 Variant PDFOption = new Variant(""); //调用FileToPDF方法将ps文档转换为pdf文档 Dispatch.callN(distiller, "FileToPDF", new Variant[] { inputPostScriptFilePath, outputPDFFilePath, PDFOption }); System.out.println("由ps文档转换为pdf文档成功!"); } catch (Exception ex) { ex.printStackTrace(); } finally { closeWord(true); } } public static void main(String[] argv) { WordToPdf d2p = new WordToPdf(); d2p.docToPDF("D:\\test.doc", "D:\\test.ps", "D:\\test.pdf"); boolean success = (new File("D:\\test.ps")).delete(); if(success){ System.out.println("删除打印机文件成功"); } } }
发表评论
-
java版RC4加密解密算法
2010-10-25 11:01 3810我们的一个项目,需要解析一个用户提供的rc4加密后的文件,特 ... -
JAVA7新特性
2010-09-30 14:38 1028Java7新特性 1.运行速度提高了,这个得益于Java7采用 ... -
Java Web开发(JSP、Servlet)乱码终极解决方案
2010-09-30 08:40 1538千万不要看网上那些杂七杂八的解决乱码的文章,解决乱 ... -
马士兵struts2学习笔记(详细版)
2010-09-29 15:57 174715、23_尚学堂马士兵_Struts2_模块包含 ... -
JAVA华为面试题
2010-09-29 15:49 3658这是华为Java的主要面试题目宝典。。。。真的是很有用。。。我 ... -
JVM学习笔记(四)------内存调优
2010-09-29 11:19 977首先需要注意的是在对JVM内存调优的时候不能只看操作系统级别J ... -
JVM学习笔记(三)------内存管理和垃圾回收
2010-09-29 11:15 850JVM内存组成结构 JVM栈 ... -
JVM学习笔记(二)------Java代码编译和执行的整个过程
2010-09-29 11:10 1055Java代码编译是由Java源码编译器来完成,流程图 ... -
JVM学习笔记(一)------基本结构
2010-09-29 11:04 878从Java平台的逻辑结构上来看,我们可以从下图来了解JVM: ... -
Java调用外部exe程序方法
2010-09-29 09:20 1168用java调用外部.exe程序的方法: public ... -
EXT+DWR+SPRING+IBATIS+ORACLE分页显示+模糊查询
2010-09-28 13:14 2109EXT代码: Ext.onReady(fun ... -
利用JSP实现的验证码
2010-09-28 08:38 799image.jsp <%@ page contentT ... -
经典的jsp分页显示
2010-09-28 08:34 774< %@ page contentType=" ... -
java类的设计技巧
2010-09-27 09:31 9471)一定将数据设计为私 ... -
Java邮件收发SMTP和POP3实例详解
2010-09-27 09:28 1913SMTP的连接和收发过程: a.建立TCP连接。 b.客户端发 ... -
谈谈java中的NaN值
2010-09-27 09:26 1084什么是NaN ?下面是我查到的结果。 Double中的 ... -
Java Jdbc查询MySQL数据库示例
2010-09-27 09:23 1842import java.sql.Connection; im ... -
Struts2 Error filterStart异常的解决方法总结
2010-09-27 09:01 989今天一位网友让polaris帮忙解决一些jqGrid的问题。在 ... -
JAVA开发编程规范
2010-09-27 08:55 912××××-××-××发布 ... -
MyEclipse实用小技巧归纳
2010-09-27 08:49 809第一步: 取消自动validati ...
相关推荐
在Java编程环境中,将Word文档转换为PDF是一项常见的任务,特别是在文档处理和自动化流程中。Aspose.Words是一个强大的第三方库,它提供了丰富的API来处理各种文档格式,包括Word(.doc, .docx)和PDF。本篇文章将...
综上所述,实现"java+pdf转word+word转pdf 无水印 无页数限制"这一功能,需要对Java编程、PDF处理、Word文档结构有深入理解,以及熟练运用相关库。同时,需要在代码设计上考虑扩展性、可维护性和性能。
在Java开发中,有时我们需要将Word文档转换为PDF格式,以满足不同的应用场景需求。Apache POI是一个流行的Java库,用于处理Microsoft Office格式的文件,包括Word(.doc/.docx)。在本示例中,我们将深入探讨如何...
在Java编程环境中,我们可以利用各种库来实现在Linux系统中将Word文档转换为PDF。这个过程通常涉及到对文件格式的理解,以及对操作系统调用的掌握。以下是一个详细的知识点介绍: 1. **Java与Linux交互**: Java...
总的来说,这个项目涵盖了Java编程、COM组件交互、文档处理、图像转换和PDF生成等多个技术领域,对于提升Java开发者的综合技能非常有帮助。在实际应用中,这样的转换功能可以用于自动化办公流程、数据迁移、文档安全...
在这个场景中,我们看到一个关于如何使用Java编程语言实现此功能的资源包:“利用poi+itextpdf进行word转pdf.rar”。这个压缩包包含源码、依赖库以及转换效果的示例,表明它提供了一种无需额外插件的解决方案。下面...
标题“java实现office、wps转pdf,pdf转word”指的是利用Java编程来实现在不同办公文档格式间的转换,特别是从Microsoft Office和WPS格式转换为PDF,以及从PDF反向转换为Word文档。 首先,让我们讨论从Office和WPS...
本篇文章将深入探讨如何使用纯Java实现Word转PDF的免费解决方案。 首先,我们关注的是“纯Java实现”。这意味着所有的转换过程都在Java环境中进行,无需依赖外部的桌面应用程序或者特定的操作系统组件。这样的实现...
总的来说,Java调用WPS实现Word到PDF和Word到图片的转换涉及技术包括:Java编程、API接口调用、文件格式转换、图像处理等。这需要对Java和WPS API有深入理解,同时熟悉文档处理和格式转换的相关知识。通过合理利用...
综上所述,"java代码实现word转换为pdf"涉及到的主要知识点包括Java编程、Apache POI的使用、PDF生成库(如iText或PDFBox)的掌握,以及文件转换的逻辑实现。这个项目可以帮助开发者理解如何在Java环境中实现文档...
本话题主要关注如何利用OpenOffice组件在Java程序中实现Word文档(.doc或.docx)到PDF的转换。OpenOffice是一个开源的办公套件,它提供了API接口,使得开发者可以进行各种文档处理操作,包括格式转换。 首先,我们...
Java Word转PDF是一种常见的文档格式转换需求,在许多业务场景中都有应用,比如报告生成、文档共享等。在Java中,可以使用第三方库如Apache POI处理Word文档,但要将Word转换为PDF,通常需要借助像JACOB这样的库。...
在Java编程环境中,将Word文档转换为图片或PDF,以及进行图片与PDF之间的相互转换,是一种常见的需求。这种转换在处理大量文档时尤其有用,例如自动化报告生成、文档预览或者格式互换。本资源提供的"java将WORD转...
总结起来,"java OpenOffice wordExcel转换PDF"涉及的关键知识点包括Java编程、OpenOffice UNO接口、JODConverter库的使用、OpenOffice/LibreOffice的安装与配置,以及文档转换中的问题排查和性能优化。通过理解和...
Jacob库在Java编程环境中是一个非常实用的工具,它允许开发者通过COM接口与Microsoft Office应用程序进行交互,例如Word、Excel和PowerPoint。在这个场景中,我们使用Jacob来实现Word文档到PDF的转换,以保持格式的...
在Java编程环境中,将Word文档转换为PDF是一项常见的任务,特别是在文档处理和报告生成的场景中。这个过程通常需要依赖一些第三方库来实现,因为Java标准库并不直接支持这种转换。以下是一个详细的介绍如何在Java中...
本文将详细讲解如何使用Java编程语言来实现这个功能,主要涉及两个库:XDocReport和Docx4j。 首先,让我们了解XDocReport库。XDocReport是由OpenXML4J和FreeMarker支持的Java库,它允许我们使用模板引擎将Word文档...
在IT行业中,转换文件格式是一项常见的...总结来说,使用Java和Jacob库实现Word转PDF是一项实用的技术,但需要注意平台限制和可能存在的格式转换问题。在实际开发中,根据项目需求和环境选择合适的转换方案至关重要。