我正在尝试在现有 pdf 的每一页中使用 iText5 添加 TextField,但我只能在第 1 页中创建,但不能在所有页面中创建。下面是代码片段。
PdfReader pdfReader = new PdfReader("C:/somename.pdf");
PdfStamper pdfStamper = new PdfStamper(pdfReader,
new FileOutputStream("C:/somename_output.pdf"));
pdfStamper.setEncryption(false, null, null, ~PdfWriter.ALLOW_COPY);
int pages = pdfReader.getNumberOfPages();
for (int page = 1; page <= pages; page++) {
TextField field = new TextField(pdfStamper.getWriter(), new Rectangle(400, 1, 612, 10), "HiddenText");
field.setBorderColor(BaseColor.CYAN);
field.setBorderStyle(PdfBorderDictionary.STYLE_DASHED);
field.setBorderWidth(BaseField.BORDER_WIDTH_MEDIUM);
field.setText("Adding some text here in each page");
field.setOptions(TextField.READ_ONLY);
pdfStamper.addAnnotation(field.getTextField(), page);
pdfStamper.close();
pdfReader.close();
}
预期的输出仅适用于第 1 页,而不适用于所有。非常感谢任何见解。