我的SD卡中有单页PDF文件。现在我需要以编程方式将这些单页PDF文件合并到一个PDF文档中。我使用Android PDF Writer库来创建这些单个PDF文件。我怎么能这样做?
答案 0 :(得分:0)
iText库可以合并PDF文件,据说有一个适用于Android的iText版本。
答案 1 :(得分: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;
}