我正在使用ITextSharp填写我的pdf,但我不知道如何查看复选框。
我有不同的情况:
实际上,这就是我的工作:
if (Output.AcroFields.Fields.ContainsKey(m.Item1))
{
// Boolean or not (have to treat differently)
if (Input.Data[m.Item2] is Boolean)
{
Output.AcroFields.SetField(m.Item1, (bool)Input.Data[m.Item2] ? "On" : "Off"); // I've tried "True", "On", "true"
}
else
{
Output.AcroFields.SetField(m.Item1, Input.Data[m.Item2].ToString());
}
}
但是从不勾选复选框。文本字段有效,但不是这3种情况。有什么想法吗?
答案 0 :(得分:2)
问题不明确。复选框可以有两个可能的值。其中一个值始终为Off
(在ISO-32000-1中定义)。另一个值可以是任何值。您可以使用我对此问题的回答找出可能的值:Checking off pdf checkbox with itextsharp
我可以将您的问题解释为:我想创建一个包含2个以上状态的复选框。这是不可能的:你有'开'状态和'关'状态。
也许您正在寻找创建选择字段。 “选择”字段类似于下拉框,您可以从列表中选择一个值。
也许您正在寻找一系列复选框:
[ ] Mr.
[ ] Mrs.
[ ] Ms.
在这种情况下,您有三个不同的复选框。您可以将/Yes
作为每个复选框的值,但通常情况下,对于“on”值,您会有/Mr
,/Mrs
和/Ms
之类的值
如果您有现有的PDF,则必须使用我对Checking off pdf checkbox with itextsharp的答案来检查适用的值
更新:你写我有2个方框,“是”和“否”。如果值为true,我检查是,否则,我检查否。这没有用。一个复选框就足够了。如果你想说是,应该检查。如果您想说“否”,则值应为/Off
(否则不是“关闭”状态的允许值。)