0

我正在尝试 在我的 Android 应用程序中使用Documents4j java 库将 Docx 格式文档转换为 PDF 文件,但输出的 pdf 文件已损坏或损坏。输出 pdf 文件为 0 字节的空文件。我正在使用以下代码将 Docx 转换为 pdf。

    String uniqueString = UUID.randomUUID().toString();
    File outputFile = new File(Environment.getExternalStorageDirectory() + "/meer_"  + uniqueString+".pdf");

    File inputWord = new File(input);

    try  {
        InputStream docxInputStream = new FileInputStream(inputWord);
        OutputStream outputStream = new FileOutputStream(outputFile);
        IConverter converter = LocalConverter.builder().build();

        converter.convert(docxInputStream).as(DocumentType.DOCX).to(outputStream).as(DocumentType.PDF).execute();
        outputStream.close();
        System.out.println("success");
    } catch (Exception e) {
        e.printStackTrace();
    }


    if(outputFile.exists()){
        openPdf(outputFile);
    }
4

1 回答 1

1

documents4j通过委托从 Java 应用程序到 MS Word 实例的转换来发挥作用。此实例可以在您可以通过 HTTP(S) 访问的服务器上运行,但本地转换器当然不能在无法运行 MS Word 的 Android 上运行。

于 2020-08-13T19:56:54.613 回答