Java 收音机中的PDFBox选项无效
尝试用此代码填充此pdf()的表单时Java 收音机中的PDFBox选项无效,java,pdf-generation,pdfbox,acrofields,Java,Pdf Generation,Pdfbox,Acrofields,尝试用此代码填充此pdf()的表单时 PDDocument pdfDocument = PDDocument.load(new File("2.pdf")); pdfDocument.setAllSecurityToBeRemoved(true); PDDocumentCatalog docCatalog = pdfDocument.getDocumentCatalog(); PDAcroForm acroForm = docCatalog.getAcroForm(); if
PDDocument pdfDocument = PDDocument.load(new File("2.pdf"));
pdfDocument.setAllSecurityToBeRemoved(true);
PDDocumentCatalog docCatalog = pdfDocument.getDocumentCatalog();
PDAcroForm acroForm = docCatalog.getAcroForm();
if (acroForm != null) {
PDField field = (PDField) acroForm.getField("rad2");
try {
field.setValue("0");
} catch (Exception e) {
System.out.println(e);
}
}
pdfDocument.save("output.pdf");
pdfDocument.close();
我收到此错误:值“0”不是字段rad2的有效选项,有效值为:[Yes]和Off
但是值“0”应该是一个有效选项,如果我使用pdftk转储数据字段,我会得到以下结果:
FieldType: Button
FieldName: rad2
FieldFlags: 49152
FieldJustification: Left
FieldStateOption: 0
FieldStateOption: 1
FieldStateOption: Off
FieldStateOption: Yes
我还尝试了值“1”,但得到了完全相同的错误
我使用pdfbox 2.0.20这是因为
Root/AcroForm/Fields/[7]/Opt
中的Opt
值,其中一个只有两个“Yes”条目。当设置了/Opt
时,PDFBox中的PDButton.setValue()
代码会以不同的方式更新此字段。这里最好不要设置它,或者通过调用field.setExportValues(null)
删除这些条目。然后,有效设置为0、1和“关闭”
谢谢您提供的信息。顺便问一下,你能告诉我你用什么软件拍到这张照片吗?再次感谢InpdfBox PDFDebugger应用程序。从下载站点获取:-)