使用iTextSharp 5.5.6在VS 2010下运行以下代码段:
PdfReader reader = new PdfReader("Test.pdf");
FileStream fs = new FileStream("New.pdf", FileMode.Create);
PdfStamper p = new PdfStamper(reader, fs);
AcroFields form = p.AcroFields;
...
RadioCheckField newField = new RadioCheckField(p.Writer, new iTextSharp.text.Rectangle(20, 20), "MyCheckBox", "Off");
PdfFormField RadioField = newField.CheckField;
p.AddAnnotation(RadioField, 1);
我收到错误" ITextSharp错误"关闭不是复选框外观的有效名称(应为关闭或是)"在声明RadioField对象的行。这是一个错误吗?我该如何解决这个问题?
答案 0 :(得分:1)
复选框可以有两个值:
Off
。这是未选中时复选框的值。 代码中存在一个错误,因为您正在尝试创建一个复选框,其值总是 Off
是否已选中。
选择其他值。 Off
保留用于关闭状态。您需要为 on state 定义一个值。 ISO-32000-1建议Yes
。
这是确保选中复选框的方法:
newField.Checked = true;
未经检查就像这样:
newField.Checked = false;