Java 如何合并列表<;PDF文档>;到单个PDF文档中
我有一个包含多个PDF的列表,我想将所有PDF合并到一个PdfDocument中(我使用iText),然后将此PdfDocument转换为ByteArrayOutputStream(或字节[])Java 如何合并列表<;PDF文档>;到单个PDF文档中,java,pdf,itext,pdf-generation,itext7,Java,Pdf,Itext,Pdf Generation,Itext7,我有一个包含多个PDF的列表,我想将所有PDF合并到一个PdfDocument中(我使用iText),然后将此PdfDocument转换为ByteArrayOutputStream(或字节[]) public byte[]将pdfDocuments合并到PDFDocument(列出pdfDocuments){ final ByteArrayOutputStream mergedPdfStream=新建ByteArrayOutputStream(); 最终PdfDocument mergedPdf
public byte[]将pdfDocuments合并到PDFDocument(列出pdfDocuments){
final ByteArrayOutputStream mergedPdfStream=新建ByteArrayOutputStream();
最终PdfDocument mergedPdfDocument=新PdfDocument(新PdfWriter(mergedPdfStream));
//我不知道我怎样才能继续下去
要实现这一点,我应该做些什么?public byte[]将pdfDocuments合并到pdfDocuments(列出pdfDocuments){
public byte[] mergePdfDocumentsIntoAPdfDocument(List<PdfDocument> pdfDocuments){
ByteArrayOutputStream mergedPdfStream = new ByteArrayOutputStream();
PdfDocument resultDoc = new PdfDocument(new PdfWriter(mergedPdfStream));
for (PdfDocument doc : pdfDocuments) {
int n = doc.getNumberOfPages();
for (int i = 1; i <= n; i++) {
PdfPage page = doc.getPage(i).copyTo(resultDoc);
resultDoc.addPage(page);
}
}
resultDoc.close();
return mergedPdfStream.toByteArray();
}
ByteArrayOutputStream mergedPdfStream=新建ByteArrayOutputStream();
PdfDocument resultDoc=新的PdfDocument(新的PdfWriter(mergedPdfStream));
用于(PDF文档文档:PDF文档){
int n=doc.getNumberOfPages();
对于(int i=1;我不使用PDF框您使用的是什么库?请更新您的问题。更新后,我使用iText
public byte[] mergePdfDocumentsIntoAPdfDocument(List<PdfDocument> pdfDocuments){
ByteArrayOutputStream mergedPdfStream = new ByteArrayOutputStream();
PdfDocument resultDoc = new PdfDocument(new PdfWriter(mergedPdfStream));
for (PdfDocument doc : pdfDocuments) {
int n = doc.getNumberOfPages();
for (int i = 1; i <= n; i++) {
PdfPage page = doc.getPage(i).copyTo(resultDoc);
resultDoc.addPage(page);
}
}
resultDoc.close();
return mergedPdfStream.toByteArray();
}