【发布时间】:2013-04-13 07:17:29
【问题描述】:
我在将已经存在的 pdf 添加到我刚刚生成的当前 pdf 中时遇到问题。 我看到了 PdfCopy,但我的情况有点不同。我有一个即时生成的 pdf,在将其发送给客户端之前,我需要在其中添加一个现有的 pdf。
【问题讨论】:
标签: pdf merge itext document writer
我在将已经存在的 pdf 添加到我刚刚生成的当前 pdf 中时遇到问题。 我看到了 PdfCopy,但我的情况有点不同。我有一个即时生成的 pdf,在将其发送给客户端之前,我需要在其中添加一个现有的 pdf。
【问题讨论】:
标签: pdf merge itext document writer
如果您不介意丢失现有 PDF 中可能存在的所有交互性,可以使用 PdfReader 和 PdfImportedPage。请先阅读documentation,更具体地说是标题为“导入页面”的第 6.2.1 节。你也可以下载例子ImportingPages1或者看看这段代码sn-p:
PdfReader reader = new PdfReader(existing_pdf);
PdfImportedPage page = writer.getImportedPage(reader, pagenumber);
document.setPageSize(reader.getPageSize(pagenumber));
document.newPage();
PdfContentByte canvas = writer.getDirectContent();
canvas.addTemplate(page, 0, 0);
这个 sn-p 是从内存中写入的。如果它不能立即起作用,您可能需要在这里和那里进行调整。
【讨论】:
ByteArrayOutputStream),读入PdfReader,然后可以使用Pdf*Copy*进行合并...