gpt4 book ai didi

java - 在 iText5 中,如果可能的话,如何将 PdfTemplate 添加到 PdfStamper 中?

转载 作者:行者123 更新时间:2023-12-02 11:21:07 28 4
gpt4 key购买 nike

我有一个用例,但我不知道如何实现。

我正在使用 headless chrome 将富文本编辑器导出为 pdf,然后我需要剪切创建的 PDF 的一部分并将其作为 pdf 注释嵌入到另一个父 pdf 中,以便注释看起来完全相同作为我从创建的 PDF 中剪切的部分。

我能够使用以下提供的说明从创建的 PDF 中正确计算并剪切我需要的精确区域: https://developers.itextpdf.com/examples/stamping-content-existing-pdfs-itext5/cut-and-paste-content-page

PdfTemplate template2 = cb.createTemplate(pageSize.getWidth(), pageSize.getHeight());
template2.rectangle(toMove.getLeft(), toMove.getBottom(), toMove.getWidth(), toMove.getHeight());
template2.clip();
template2.newPath();
template2.addTemplate(page, 0, 0);
cb.addTemplate(template1, 0, 0);
cb.addTemplate(template2, -20, -2);

我想通过 PdfStamper 添加 PDFTemplate。

这可能吗?如果现在不行,我可以用其他方法实现这一点吗?

最佳答案

在您引用的示例中,您获得 cb 如下:

PdfContentByte cb = writer.getDirectContent();

使用PdfStamper时,您可以这样获取cb:

PdfContentByte cb = stamper.getUnderContent(p);

或者像这样:

PdfContentByte cb = stamper.getOverContent(p);

前一种方法会将新内容添加到现有内容下;后一种方法将在现有内容之上添加新内容。在这些行中,p 是页码(从 1 到现有文档的总页数)。请参阅How to superimpose pages from existing documents into another document?举个例子。

如果您想向现有文档添加新页面,请使用 insertPage() 方法,如 How to add blank pages to an existing PDF in java? 中所述。添加空白页面后,您可以向其中添加 PdfTemplate

关于java - 在 iText5 中,如果可能的话,如何将 PdfTemplate 添加到 PdfStamper 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49912903/

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