我需要获取有关Checkbox
的信息,例如,复选框标记(十字,圆形等),选中,未选中等。但是,如果该文件中没有XFA
信息,我将无法理解该信息在何处保存。该文件是通过Adobe Acrobat Pro DC 19.21.20049
创建的。我尝试使用pdfbox tool
来查找此信息,但没有找到。这是复选框信息的屏幕截图:
任何人都可以向我解释如何获取此信息以及在哪里必须找到它?
答案 0 :(得分:0)
对于 any PdfFormField field
具有一个值,您可以像这样检索该值:
PdfObject value = field.getValue();
如果有复选框字段,则将返回PdfName
。对于未选中的字段,名称为关闭。对于选中的字段,即使规范建议是,它也可以是其他任何内容。
更难确定这些状态的外观,因为至少对于选中状态,复选框必须提供一个外观流,其中包含创建可视化效果的指令。
我们已经分析了一个这样的流in response to your other recent question。在这种情况下,将使用ZapfDingbats刻度符号,您可以将文本提取应用于流并确定它。
在其他情况下,例如如果出现交叉复选框,通常仅使用矢量图形指令。
不过,也可以在此处使用可能显示任何内容的位图图像。
因此,尽管您当然可以将外观流与由例如Adobe Acrobat会识别许多复选框字段的外观,因此您将无法自动识别全部。