gpt4 book ai didi

c# - ItextSharp - 使用 C# 自动填写 pdf 表单 - 复选框问题

转载 作者:太空狗 更新时间:2023-10-29 17:32:16 25 4
gpt4 key购买 nike

我正在填写使用 Acrobat pro 和 iTextSharp & C# 创建的 pdf 表单,但在尝试勾选复选框字段时发现自己卡住了。

我让它在单选按钮和文本框上工作,但似乎无法让复选框工作。我还确认了这种情况下的复选框名称“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();
}

如有任何帮助,我们将不胜感激。

布拉德

最佳答案

将字段值设置为复选框的导出值 将使其被选中。因此,如果导出值为"is",则将字段的值设置为"is"将勾选复选框。如果导出值是其他值(例如“打开”),您需要将字段值设置为该值才能勾选该框。

关于c# - ItextSharp - 使用 C# 自动填写 pdf 表单 - 复选框问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4623297/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com