You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iText 7.NET添加表单域时所有字段在最后一页重复出现问题求助

问题根因

  • iText 7的PdfAcroForm.AddField()单参数重载默认会将表单域控件渲染到文档最后一页,你单独调用SetPage()方法无法覆盖这个默认逻辑,所以会出现表单域同时出现在指定页和最后一页的重复问题。
  • 要指定表单域绑定到固定页面,必须使用双参数的AddField()重载,直接传入目标页面对象。

修正后代码

PdfReader reader = new PdfReader(inputFile);
PdfDocument pdf2 = new PdfDocument(reader, new PdfWriter(outputFile));
PdfAcroForm form = PdfAcroForm.GetAcroForm(pdf2, true);
PdfFormField tf = PdfTextFormField.CreateText(
    pdf2, new Rectangle(1, 20, 30, 40), "Field1", "");
tf.SetBorderColor(ColorConstants.RED);
tf.SetBorderWidth(2);
// 改动点:使用双参数AddField重载,传入目标页面对象(页码从1开始计数)
form.AddField(tf, pdf2.GetPage(1));
pdf2.Close();

内容的提问来源于stack exchange,提问作者ju209192

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 13:45:02