为什么当我拼合 PDF 时我的复选框消失了?

Why are my checkboxes disappearing when I flatten the PDF?

我正在尝试使用 PDAcroForm flatten method. The pdf I create is based on the example code for PDFBox Checkbox creation 来拼合我的 PDF(我最终得到一个带有一个复选框的单页)。但是,当我在 PDF 的 Acroform 上调用 flatten 方法时,我创建的复选框消失了。知道是什么原因造成的吗?

使用 PDFBox 版本:2.0.5

答案:

当我创建未选中的复选框时出现此错误。

阅读另一个 Whosebug answer by Matyas 后,解决方案 是我需要 明确设置复选框的值 未选中

我能够通过查看实际的 PDF 结构来验证解决方案。当我没有明确设置复选框值时,我添加到 PDF 的新复选框没有 /V 值(无论复选框是否选中)。当我将该值显式设置为未选中(将 /V 值添加到 /Off)时,展平方法不会擦除复选框。

请参阅更新的 example in PDFBOX Checkbox Creation 以获得正确的实施。