当前位置: 首页 > 面试题库 >

通过Apache PDFBox将MS Office文档添加到PDF

钦侯林
2023-03-14
问题内容

我正在使用Apache
PDFBox(http://pdfbox.apache.org/)从任意数量的文件(包括图像和其他PDF)中创建PDF。现在,我需要将MS
Office文档(Word,Excel和Outlook
MSG)添加到PDF。这些文件几乎可以具有每个Office版本,因此不能认为该文件是新的Office文件(例如docx)还是旧的办公室文件(例如doc)。

有什么办法只能使用免费工具来做到这一点吗?我的第一个想法是使用Apache
POI(http://poi.apache.org/)读取每个文件的内容,然后将该文件重新创建为新的PDF页面,但这会变得非常昂贵,因为该PDF创建用于由五十多人组成的服务器。


问题答案:

在服务器上安装Open Office。并将“ docx,doc”文档转换为“ .pdf”。

package naveed.workingfiles;

import java.io.*;
import com.artofsolving.jodconverter.openoffice.connection.*;
import com.artofsolving.jodconverter.openoffice.converter.*;
import com.artofsolving.jodconverter.*;

public class DocToPdf {

    public static void main(String[] args) throws Exception {

        //Creating the instance of OpenOfficeConnection and 
        //passing the port number to SocketOpenOfficeConnection constructor 
        OpenOfficeConnection con = new SocketOpenOfficeConnection(8100);

        //making the connection with openoffice server
        con.connect();

        // making the object of doc file and pdf file
        File inFile = new File("sample.docx");

        //this is the final converted pdf file
        File outFile = new File("sample.pdf");

        //making the instance 
        DocumentConverter converter = new OpenOfficeDocumentConverter(con);

        //passing both files objects
        converter.convert(inFile, outFile);

        con.disconnect();
    }

}


 类似资料:
  • 我正在使用Apache PDFBox(http://PDFBox.Apache.org/)从任意数量的文件(包括图像和其他PDF)中创建PDF。现在我需要将MS Office文档(Word、Excel和Outlook MSGs)添加到PDF中。这些文件几乎可以有每一个Office版本,因此不允许该文件是新的Office文件(例如docx)还是旧的Office文件(例如doc)。 有没有办法只使用免

  • 问题内容: 在我当前的项目中,我尝试将一个添加到PDFBox文档中。更具体地说,我使用来自的图片。我的代码如下所示: 文档被创建;我可以添加文本,但是出现错误,指出图像没有足够的信息可显示。 任何有关我做错事情的线索? 问题答案: 感谢您帮助我解决垃圾问题。昨晚和今天花了几个小时,人们对PipedIn / OutStreams感到困惑。无法解决。但是,我得到它的工作。事实证明,这并不是很困难。 我

  • 如何通过ApachePOI或其他java框架将背景图像添加到docx文档中。我想在这样的结果文档中有一些xml块,其中定义了背景

  • 我正在使用Python FastAPI编写一些Rest API。需要在Swagger-OpenAPI文档中添加许多自定义部分。这包括每个API的联系信息字段、作者信息、显示数据模型的图像、数据库字段等。 有没有办法使用快速API内置的OpenAPI功能来完成所有这些工作?我知道可以托管我们自己的自定义 json 文件。但是我不知道如何将图像添加到招摇的json文件中。我也不知道如何将自定义字段添加

  • 问题内容: 我已经从http://www.oracle.com/technetwork/java/javase/downloads/index.html#docs下载了Java API文档,并且应该使用 窗口->首选项-> Java->已安装的JRE->编辑->“选择rt.jar”-> Javadoc位置 并且该位置已被接受,“验证”就可以了。但是,对我来说,当我将鼠标悬停在某个项目上时(例如在A

  • 我正在尝试循环浏览一个列表,将每个项目添加到google firestore文档中。然而,我面临的问题是,只有列表中的最后一项被添加到文档中。 注意:行打印(“=====$i POST成功添加==”)按预期增量打印5次 问题:如何使此循环将所有项目添加到firestore文档?