package com.snpit.sncms.system.encryption.word; import java.io.File; import com.jacob.activeX.ActiveXComponent; import com.jacob.com.*; /** * word文件转换PDF,支持DOC DOCX * @author congqinglin@sdepci.com */ public class DocToPdf { static final int wdDoNotSaveChanges = 0;// 不保存待定的更改。 static final int wdFormatPDF = 17;// PDF 格式 // public static void main(String[] args) { // //example // String filename = "d:/sncms/2013/10/16/1381889147205.docx"; // // DocToPdf d2p = new DocToPdf(); // d2p.convertToPDF(filename); // } /** * 转换word文件到文件所在位置,支持DOC DOCX * @param docFilePath word文件的路径 */ public void convertToPDF(String docFilePath){ //输入路径 String filename = docFilePath; //输出路径 String spPath[]=docFilePath.split("\\."); StringBuffer sb= new StringBuffer(); sb.append(spPath[0]); sb.append(".pdf"); String toFilename=sb.toString(); //转换 convertFile(filename,toFilename); } /** * 转换word文件 并转换到一个新的位置,支持DOC DOCX * @param docFilePath word文件的路径 * @param pdfFilePath 转换成的pdf文件的路径 */ public void convertToPDFWithNewPath(String docFilePath,String pdfFilePath){ //输入路径 String filename = docFilePath; //输出路径 String toFilename=pdfFilePath; //转换 convertFile(filename,toFilename); } /** * 转换主体 * @param filename * @param toFilename */ private void convertFile(String filename,String toFilename){ System.out.println("启动Word转换PDF..."); long start = System.currentTimeMillis(); ActiveXComponent app = null; try { app = new ActiveXComponent("Word.Application"); app.setProperty("Visible", false); Dispatch docs = app.getProperty("Documents").toDispatch(); System.out.println("打开文档..." + filename); Dispatch doc = Dispatch.call(docs,// "Open", // filename,// FileName false,// ConfirmConversions true // ReadOnly ).toDispatch(); System.out.println("转换文档到PDF..." + toFilename); File tofile = new File(toFilename); if (tofile.exists()) { tofile.delete(); } Dispatch.call(doc,// "SaveAs", // toFilename, // FileName wdFormatPDF); Dispatch.call(doc, "Close", false); long end = System.currentTimeMillis(); System.out.println("转换完成..用时:" + (end - start) + "ms."); } catch (Exception e) { System.out.println("========Error:文档转换失败:" + e.getMessage()); } finally { if (app != null) app.invoke("Quit", wdDoNotSaveChanges); } } }
相关推荐
在IT行业中,转换文档格式是一项常见的任务,尤其在办公环境中,Word文档(.doc或.docx)和PDF(Portable Document Format)文件之间的转换是必不可少的。本文将详细讲解如何使用OpenOffice将Word文档转换为PDF格式...
然而,某些旧版的Word软件或者用户可能不支持Docx格式,这时就需要将其转换为Doc格式,后者是Word 97-2003广泛使用的文件格式。 转换方法有很多种,其中一种是使用专门的文件转换工具。在这种情况下,我们看到...
它支持Word 2010 (Docx转换成PDF), Word 2007 (Docx转换成PDF), Word 2003 (Doc转换成PDF), Word 2000 (Doc转换成PDF)和Word 97(Doc转换成PDF)的文件格式到PDF,它还包括的文件格式如, RTF,文本文件和图像格式PDF...
- 对于.docx文件:注册表项应为HKEY_CLASSES_ROOT\.docx\Word.Document.xx,这里的"xx"代表Office的内部版本号,例如对于Microsoft Word 2010,应该是HKEY_CLASSES_ROOT\.docx\Word.Document.12 - 类似地,对于....
- **读取Word文档**:使用Apache POI的HSSFWorkbook或XWPFDocument类读取.doc或.docx文件,HWPFDocument用于处理RTF文件。 - **解析内容**:从Word文档中提取文本、段落样式、图片等信息。 - **创建PDF**:使用iText...
4. **执行转换**:然后,使用`Docx4J`提供的方法将Word文档转换为PDF。 ```java OutputStream os = new FileOutputStream("path_to_output_pdf.pdf"); PdfWriterHelper.write(wordMLPackage, os); os.close(); ``` ...
// 将Word转换为PDF pdfDoc.ImportFromWord(wordDoc, ImportFormatOption.PreserveLayout); // 保存PDF pdfDoc.SaveToFile("Target PDF.pdf", FileFormat.PDF); ``` 这个例子展示了如何利用.NET框架和第三方库在...
总结来说,用C#.NET实现生成PDF文档和将WORD转换为PDF涉及到对PDF结构的理解、使用合适的库进行编程、处理WORD文档的复杂格式以及异常处理。此外,OCR技术在文档转换过程中的应用也是提高效率的关键环节。通过掌握...
在Java开发中,有时我们需要将Word文档转换为PDF格式,以满足不同的应用场景需求。Apache POI是一个流行的Java库,用于处理Microsoft Office格式的文件,包括Word(.doc/.docx)。在本示例中,我们将深入探讨如何...
PDF文件转换成DOC文档是一个常见的需求,特别是在办公环境中,用户可能需要编辑PDF中的文本或将其内容整合到Word文档中。这个压缩包文件“PDF文件转换成DOC文档.rar”显然是一个工具,专门用于解决这个问题。下面将...
采用C#开发语言,借助第三方Aspose.Pdf.dll及Spire.Pdf.dll 对pdf文件进行处理,可以把pdf文件转换成doc 或者docx png等格式,通过代码大家可以进行自己重新开发,核心代码已经编写完成,下载后可以直接运行进行pdf...
本主题聚焦于“word文档转换为PDF格式文件”,这是一个关键的知识点,涉及到Microsoft Word和Adobe PDF这两种广泛使用的文件格式。 Word(.doc或.docx)是Microsoft Office套件中的文字处理软件,它提供了丰富的...
由于软件抛弃了传统虚拟打印生成PDF的方法,而采用直接分析WORD文件并转换到PDF的技术,因此批量Word转PDF转换器在保证了转换PDF质量的同时,它的转换速度极快,可以达到1分钟转几十个文件。 支持转成PDF的格式:...
2. **分页处理**:考虑到PDF的分页特性,`pdf2docx`可能具备了识别和保留原分页的转换能力,确保转换后的Docx文件在阅读体验上接近PDF。 3. **文本和图像提取**:库可能能准确地提取PDF中的文本和图像,避免在转换...
- 使用本地转换库:如`docx2html`或`docx4js`,这些库可以将DOCX文件转换为HTML,然后在uniapp中渲染。然而,这种方式需要在服务器端进行转换,因为H5环境不支持读取本地文件系统。 以`docx4js`为例,你需要先将...
总而言之,将Word转换为PDF是一种常用的操作,无论是为了格式的一致性、分享的便利还是安全性考虑。通过选择合适的工具和方法,可以实现高效且高质量的转换,同时批量转换功能则极大地提升了工作效率。
在IT行业中,转换文档格式是一项常见的任务,尤其是将Microsoft Word的docx格式转换为更通用的PDF格式。本文将深入探讨四种不同的Java库,它们都可用于实现这一转换:Apache POI、docx4j、Aspose.Words以及Spire.Doc...
LibreOffice是一款免费且开源的办公软件套件,它提供了类似Microsoft Office的功能,包括文档编辑、表格处理、演示制作等,并且支持文件格式转换,如将Word文档转换为PDF。 LibreOffice包含一个名为Writer的应用...
然而,在实际工作中,我们常常需要将PDF文件转换为可编辑的Word文档(.doc或.docx)。这一需求催生了一系列专门用于PDF与Word之间相互转换的工具。本文将详细介绍一种高效实用的方法——使用迅捷PDF转换成Word转换器...
此外,一些高级工具可能还支持选择性转换,用户可以选择只转换PDF中的特定页面或页面范围。 在安全方面,用户应确保选择信誉良好的转换器,因为这些工具可能需要上传文件到服务器进行转换。这意味着你的文件可能会...