gpt4 book ai didi

java - 向现有 PDF 添加页脚

转载 作者:行者123 更新时间:2023-11-30 07:34:36 27 4
gpt4 key购买 nike

我正在尝试将页脚添加到现有的 PDF 中。我确实在 PDF 中添加了一个页脚。

有没有办法添加2行页脚?这是我的代码如下:

Document document = new Document(); 

PdfCopy copy = new PdfCopy(document, new FileOutputStream(new File("D:/TestDestination/Merge Output1.pdf")));
document.open();

PdfReader reader1 = new PdfReader("D:/TestDestination/Merge Output.pdf");
int n1 = reader1.getNumberOfPages();

PdfImportedPage page;
PdfCopy.PageStamp stamp;
Font ffont = new Font(Font.FontFamily.UNDEFINED, 5, Font.ITALIC);

for (int i = 0; i < n1; ) {
page = copy.getImportedPage(reader1, ++i);
stamp = copy.createPageStamp(page);
ColumnText.showTextAligned(stamp.getUnderContent(), Element.ALIGN_CENTER,new Phrase(String.format("page %d of %d", i, n1)),297.5f, 28, 0);
stamp.alterContents();
copy.addPage(page);
}

document.close();
reader1.close();

最佳答案

请前往the official documentation然后点击Q&A转至常见问题解答。选择Absolute positioning of text .

您当前使用ColumnText 的方式允许您添加单行文本。您正在使用 ColumnText.showTextAligned(...),如我对问题 How to rotate a single line of text? 的回答中所述。

您应该阅读以下问题的答案:

假设您无法访问官方网站(否则您不会发布您的问题),我将添加一个简短的代码片段:

ColumnText ct = new ColumnText(stamp.getUnderContent());
ct.setSimpleColumn(rectangle);
ct.addElement(new Paragraph("Whatever text needs to fit inside the rectangle"));
ct.go();

在此代码段中,stamp 是您在代码中创建的对象。 矩形对象的类型为矩形。它的参数是要在其中渲染多行文本的矩形的左下角和右上角的坐标。

警告:所有不适合矩形的文本都将被删除。您可以通过首先在模拟模式下添加文本来避免这种情况。如果文本合适,请实际添加。如果不合适,请使用较小的字体或较大的矩形重新尝试。

关于java - 向现有 PDF 添加页脚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35570378/

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