如何通过itextpdf.text.pdf.AcroFields设置一个字段名称?

时间:2014-02-25 07:39:15

标签: c# itextsharp

我想设置一个字段名称,在我的C#代码中将值保留为空,所以我想知道除此之外是否有其他方法可以做到:

stamper.AcroFields.SetField("license", "");

可以使用AcroFieds类中的setFieldProperty(String field,String name,Object value,int [] inst)方法吗?它的用途是什么?

请帮忙,

提前谢谢!

1 个答案:

答案 0 :(得分:1)

你的问题不明确。让我给你三个答案,希望我的一个答案与你的问题相符。

您想要在现有文档中添加字段:

这不是使用SetField()方法(AcroFields),而是使用AddAnnotation()方法(PdfStamper)。您可以创建PdfFormField实例(例如,在TextField类的帮助下),然后将其添加到特定页面。

stamper.AddAnnotation(field, pagenumber);

您想要重命名现有字段

这不是使用SetField()方法完成的,而是使用RenameField()方法。有关详细信息,请参阅iTextSharp RenameField bug?

您想要更改现有字段中的属性

有两种方法可以更改属性:一种更改标志,另一种更改实际属性。

表单字段标志可以是:

  • READ_ONLY
  • 必需
  • MULTILINE
  • DO_NOT_SCROLL
  • PASSWORD
  • FILE_SELECTION
  • PASSWORD
  • DO_NOT_SPELL_CHECK
  • EDIT
  • MULTISELECT
  • COMB

还有注释标记,例如更改可见性:仅在屏幕上可见,仅在打印时可见,始终可见,永远不可见。

实际属性是:

  • TEXTFONT
  • 文本颜色
  • TEXTSIZE
  • BGCOLOR
  • BORDERCOLOR

此信息取自chapter 8 of my book