Я нахожусь в процессе заполнения формы PDF, созданной с помощью Acrobat pro с iTextSharp & C #, и застрял при попытке поставить галочку в поле.
У меня это работает для переключателей и текстовых полей, но не могу установить флажок.
Я также подтвердил, что имя флажка в этом случае "Q7b" является правильным в документе acrobat и может найти его в форме, используя следующий код
private string getfieldnames(AcroFields fields)
{
StringBuilder sb = new StringBuilder();
foreach (string key in fields.Fields.Keys)
{
sb.Append(key + Environment.NewLine);
}
return sb.ToString();
}
Код, который я использую для обновления, установлен ниже
using (MemoryStream pdfFlat = new MemoryStream())
{
PdfReader pdfReader = new PdfReader(strPath);
PdfStamper pdfStamp = new PdfStamper(pdfReader, pdfFlat);
AcroFields fields = pdfStamp.AcroFields;
//textfields
fields.SetField("Initiating_Doctor", "Doctor A");
fields.SetField("Speciality", "Surgeon");
//Radiobuttons
fields.SetField("PRELIM_Q1", "Yes");
fields.SetField("PRELIM_Q2", "No");
fields.SetField("PRELIM_Q3", "No");
fields.SetField("PRELIM_Q4", "No");
//checkbox - Set the checkbox to checked but this does not work.
fields.SetField("Q7b", "Yes");
pdfReader.Close();
pdfStamp.FormFlattening = true;
pdfStamp.FreeTextFlattening = true;
pdfStamp.Writer.CloseStream = false;
pdfStamp.Close();
}
Любая помощь будет принята с благодарностью.
Бред