【问题标题】:Converting .doc to .pdf in java (for free)在 Java 中将 .doc 转换为 .pdf(免费)
【发布时间】:2015-12-07 20:27:04
【问题描述】:

我创建了一个 java 应用程序,可以在输出中创建一些文档。这些文档是使用 apache POI api 创建的,由文本 abn 表组成。 我的老板现在决定他们也希望以 pdf 格式存储它们。他们当然有 0 美元的预算。我尝试使用 iText 4.2(根据 lgpl 许可),但我丢失了所有表格(我只有裸文本)

这是我的脚本:

try{

                 XWPFDocument doc = new XWPFDocument(POIXMLDocument.openPackage(s + ".doc"));  
                 XWPFWordExtractor wx = new XWPFWordExtractor(doc); 
                 PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(s + ".pdf"));  

                 document.open();  
                 writer.setPageEmpty(true);  
                 document.newPage();  
                 writer.setPageEmpty(true);  
                 String text = wx.getText();
                 text=text.replaceAll("\\cM?\r?\n", "");
                 document.add(new Paragraph(text));         
            } 
            catch(Exception e){
                 System.out.println("Exception during test");  
                 e.printStackTrace();  
            } 

有什么帮助吗?即使改变方向也会很棒。如果我可以简单地编写一个打开文档的宏,输入另存为,然后将其保存为具有相同名称的 pdf,我正在徘徊。最终在 java 应用程序中启动它。

谢谢

【问题讨论】:

  • 通过 JODConverter 的 OpenOffice?
  • 我从未听说过。我下载了.jar,你有一个例子给我吗?读取 .doc 文件并抛出 .pdf 文件的东西
  • 编辑:我试过这个 JODConverter 脚本: DefaultOfficeManagerConfiguration configuration = new DefaultOfficeManagerConfiguration(); configuration.setOfficeHome("C:\\Program Files (x86)\\OpenOffice.org 3"); OfficeManager officeManager = configuration.buildOfficeManager(); officeManager.start(); OfficeDocumentConverter 转换器 = new OfficeDocumentConverter(officeManager); converter.convert(新文件(文件名+“.doc”),新文件(文件名+“.pdf”)); officeManager.stop();但我收到这个异常 NoClassDefFoundError: com/sun/star/lang/DisposedException

标签: pdf apache-poi itext doc


【解决方案1】:

您可能想看看这个,非常相似question
我在那里写了一个尚未测试的答案,因为我没有时间这样做。但它可能仍然可以解决您的问题,或者至少为您提供一些进一步研究的提示。

【讨论】:

    猜你喜欢
    • 2015-09-05
    • 1970-01-01
    • 2015-01-09
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    • 2016-05-17
    • 2012-02-05
    • 2014-12-09
    相关资源
    最近更新 更多