1

我的 SD 卡中有单页的几个 PDF 文件。现在我需要以编程方式将这些单页 PDF 文件合并到一个 PDF 文档中。我已经使用Android PDF Writer库来创建这些单个 PDF 文件。我怎样才能做到这一点?

4

2 回答 2

0

iText 库可以合并 PDF 文件,据说有一个适用于 Android 的 iText 版本。

于 2012-09-20T11:15:00.003 回答
0

您可以将 Android 上的多个 PDF 文件与最新的Apache PdfBox Release结合起来。

只需将此依赖项添加到您的 build.gradle 中:

compile 'org.apache.pdfbox:pdfbox:2.0.2'

在异步任务中执行以下操作:

private File downloadAndCombinePDFs(InputStream streamToPdf1, InputStream streamToPdf2, InputStream streamToPdf3 ) throws IOException {

    PDFMergerUtility ut = new PDFMergerUtility();
    ut.addSource(streamToPdf1);
    ut.addSource(streamToPdf2);
    ut.addSource(streamToPdf3);

    final File file = new File(getContext().getExternalCacheDir(), System.currentTimeMillis() + ".pdf");

    final FileOutputStream fileOutputStream = new FileOutputStream(file);
    try {
        ut.setDestinationStream(fileOutputStream);
        ut.mergeDocuments(MemoryUsageSetting.setupTempFileOnly());

    } finally {
        fileOutputStream.close();
    }
    return file;
}
于 2016-02-26T12:43:44.527 回答