pdfbox文本框值未设置

时间:2016-08-12 19:44:48

标签: java pdfbox

我正在使用PDFBox填写我们已经由第三方提供的PDF表格。

我只有1个表单有问题,此代码适用于其他21个表单。

我知道valueToSet具有值并且是正确的,并且在setField方法中,getField方法确实返回了值,因此我知道字段名称也是正确的。此外,此代码适用于许多其他形式。没有填充任何字段(此特定模板无论如何只有文本框)。

我错过了什么?我应该寻找这种特定形式的东西吗?

setField(formFieldName, valueToSet);

public static void setField(String name, String value ) throws IOException {
    PDDocumentCatalog docCatalog = document.getDocumentCatalog();
    PDAcroForm acroForm = docCatalog.getAcroForm();
    PDField field = acroForm.getField( name );
    if (field instanceof PDCheckBox){
        String onValue = ((PDCheckBox) field).getOnValue();
        String offValue = "Off";
        if(value.equals("Yes")){
            field.setValue(onValue);
        }
        else{
            field.setValue(offValue);
        }
    }
    else{
        field.setValue(value);          
    }
}

0 个答案:

没有答案