Java 合并两个PDF';itext中的s
我有两个ByteArrayOutputStreams,其中包含PDF文件。 我使用了java concatate操作,但失败了。 我想在第一个pdf之后添加第二个pdfJava 合并两个PDF';itext中的s,java,pdf,pdf-generation,itext,Java,Pdf,Pdf Generation,Itext,我有两个ByteArrayOutputStreams,其中包含PDF文件。 我使用了java concatate操作,但失败了。 我想在第一个pdf之后添加第二个pdf 是否有Itext函数可以使用streams合并两个PDF?至少找到了。这一个对我有用 Document document = new Document(); //Rectangle pageSize = new Rectangle(792, 612); Rectangle pageSize =
是否有Itext函数可以使用streams合并两个PDF?至少找到了。这一个对我有用
Document document = new Document();
//Rectangle pageSize = new Rectangle(792, 612);
Rectangle pageSize = PageSize._11X17;
document.setPageSize(pageSize);
PdfWriter writer = PdfWriter.getInstance(document, outputStream);
document.open();
PdfContentByte cb = writer.getDirectContent();
for (InputStream in : list) {
PdfReader reader = new PdfReader(in);
for (int i = 1; i <= reader.getNumberOfPages(); i++) {
document.newPage();
//import the page from source pdf
PdfImportedPage page = writer.getImportedPage(reader, i);
//add the page to the destination pdf
cb.addTemplate(page, 0, 0);
}
}
outputStream.flush();
document.close();
outputStream.close();
Document Document=新文档();
//矩形页面大小=新矩形(792612);
矩形页面大小=页面大小。_11X17;
document.setPageSize(页面大小);
PdfWriter writer=PdfWriter.getInstance(文档,outputStream);
document.open();
PdfContentByte cb=writer.getDirectContent();
用于(输入流输入:列表){
PdfReader读取器=新PdfReader(in);
对于(inti=1;i),您可以检索底层的字节[]
s从您的ByteArrayOutputStreams
,打开PDF阅读器
,然后使用PdfCopy
连接它们,在这里使用实际的PDFWWriter
实例通常不太理想。最有可能的是PdfCopy
或PdfSmartCopy
实例更适合您的需要。