我是第一次使用 pdfbox。现在我正在网站上阅读一些内容Pdf http://pdfbox.apache.org/
总结一下我有一个这样的pdf:
只是我的文件有很多不同的组件(文本字段、单选按钮、复选框)。对于此 pdf,我必须阅读这些值:Mauro、Rossi、My Company。现在我编写了以下代码:
PDDocument pdDoc = PDDocument.loadNonSeq( myFile, null );
PDDocumentCatalog pdCatalog = pdDoc.getDocumentCatalog();
PDAcroForm pdAcroForm = pdCatalog.getAcroForm();
for(PDField pdField : pdAcroForm.getFields()){
System.out.println(pdField.getValue())
}
这是读取表单组件内的值的正确方法吗?
对此有什么建议吗?
我在哪里可以学习有关 pdfbox 的其他内容?
您拥有的代码应该可以工作。如果您确实希望对这些值进行某些操作,则可能需要使用其他一些方法。例如,您可以使用以下方式获取特定字段pdAcroForm.getField(<fieldName>)
:
PDField firstNameField = pdAcroForm.getField("firstName");
PDField lastNameField = pdAcroForm.getField("lastName");
注意PDField
只是一个基类。您可以将事物转换为子类,以从中获取更多有趣的信息。例如:
PDCheckbox fullTimeSalary = (PDCheckbox) pdAcroForm.getField("fullTimeSalary");
if(fullTimeSalary.isChecked()) {
log.debug("The person earns a full-time salary");
} else {
log.debug("The person does not earn a full-time salary");
}
正如您所建议的,您可以在 apache pdfbox 网站上找到更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)