gpt4 book ai didi

java - 如何使用 iText 将 PDF 文件附加到现有文件?

转载 作者:行者123 更新时间:2023-11-29 18:49:43 25 4
gpt4 key购买 nike

在一个应用程序中,我试图将多个 PDF 文件附加到一个已经存在的文件中。使用 iText 我发现了这个

使用 iText 我找到了这个教程,在我的情况下它似乎不起作用。

以下是我尝试使用的一些方法。

String path = "path/to/destination.pdf";
PdfCopy mergedFile = new PdfCopy(pdf, new FileOutputStream(path));

PdfReader reader;
for(String toMergePath : toMergePaths){
reader = new PdfReader(toMergePath);
mergedFile.addDocument(reader);
mergedFile.freeReader(reader);

reader.close();
}

mergedFile.close();

当我尝试添加文档时,logcat 告诉我文档未打开。

但是,pdf(原始文档)已经通过其他方法打开,并且仅在此之后关闭。而且,mergedFile 与教程中的完全一样,我相信这一定是正确的。

有没有人遇到过同样的问题?否则,有人知道更好的方法来做我想做的事吗?

我见过其他解决方案从一页复制内容并将它们附加到新文件,但我担心这会“编译”我需要的注释。

谢谢你的帮助,

亲切的,

马修·默尼耶

最佳答案

希望这段代码对您有所帮助。

public static void mergePdfs(){
try {
String[] files = { "D:\\1.pdf" ,"D:\\2.pdf" ,"D:\\3.pdf" ,"D:\\4.pdf"};
Document pDFCombineUsingJava = new Document();
PdfCopy copy = new PdfCopy(pDFCombineUsingJava , new FileOutputStream("D:\\CombinedFile.pdf"));
pDFCombineUsingJava.open();
PdfReader ReadInputPDF;
int number_of_pages;
for (int i = 0; i < files.length; i++) {
ReadInputPDF = new PdfReader(files[i]);
copy.addDocument(ReadInputPDF);
copy.freeReader(ReadInputPDF);
}
pDFCombineUsingJava.close();
}
catch (Exception i)
{
System.out.println(i);
}
}

关于java - 如何使用 iText 将 PDF 文件附加到现有文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51173460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com