用itextsharp检查pdfcheckbox

我已经尝试了很多不同的方式,但我不能得到checkbox被检查! 以下是我所尝试的:

var reader = new iTextSharp.text.pdf.PdfReader(originalFormLocation); using (var stamper = new iTextSharp.text.pdf.PdfStamper(reader,ms)) { var formFields = stamper.AcroFields; formFields.SetField("IsNo", "1"); formFields.SetField("IsNo", "true"); formFields.SetField("IsNo", "On"); } 

他们都没有工作。 有任何想法吗?

你不应该“猜测”可能的值。 您需要使用存储在PDF中的值。 尝试使用CheckBoxValues示例来查找这些可能的值:

 public String getCheckboxValue(String src, String name) throws IOException { PdfReader reader = new PdfReader(SRC); AcroFields fields = reader.getAcroFields(); // CP_1 is the name of a check box field String[] values = fields.getAppearanceStates("IsNo"); StringBuffer sb = new StringBuffer(); for (String value : values) { sb.append(value); sb.append('\n'); } return sb.toString(); } 

或者看看使用RUPS的PDF。 转到小部件注释并查找正常( /N )外观( AP )状态。 在我的例子中他们是/Off/Yes

屏幕截图