对于构建变通办法,我想知道是否可以使用pdfbox 2.0.12或更高版本推送/取消推送PD(Push)Button
。
PDButton pdButton = (PDButton) field;
pdButton.setValue("pushed");
是否存在可用于按下/取消按下按钮的值?
我知道应该使用PDCheckBox
解决此问题,但是由于我们大多数PDF模板都使用按钮而不是复选框来显示复选框,所以我想简化这些文件的迁移。 / p>
更新1
如评论中所建议,我尝试将按钮设置为一个,但这导致了IllegalStateException
。
代码
PDButton btn = (PDButton) field;
btn.setValue("1");
例外
Caused by: java.lang.IllegalStateException
at org.apache.pdfbox.pdmodel.interactive.annotation.PDAppearanceEntry.getSubDictionary(PDAppearanceEntry.java:97)
at org.apache.pdfbox.pdmodel.interactive.form.PDButton.getOnValueForWidget(PDButton.java:348)
at org.apache.pdfbox.pdmodel.interactive.form.PDButton.getOnValues(PDButton.java:319)
at org.apache.pdfbox.pdmodel.interactive.form.PDButton.checkValue(PDButton.java:370)
at org.apache.pdfbox.pdmodel.interactive.form.PDButton.setValue(PDButton.java:157)
更新2
不可能。只能选中/取消选中复选框。我们将修复我们的PDF模板。