PDFBox 设置字段值不起作用

PDFBox set field value doesn't work

我正在尝试在已启用输入字段但未显示任何内容的 pdf 表单中设置值。 在我的 pdf 中有一个启用输入字段的复选框,所以首先我检查它然后我在已启用的字段中设置值,但是当我保存我的 pdf 时我的值没有出现。 这是我的代码:

PDTextField pdfField = (PDTextField) acroForm.getField("info_15a");
pdfField.setValue("xxxxxx");

没有错误,没有异常。 那么,我能做什么? 谢谢, 芭芭拉

您文档中的字段 "info_15a" 设置了注释标记 Hidden。因此,即使 PDFBox 正确填写了该表单字段,您也看不到任何内容。

要使表单 fill-in 可见,您还必须 un-hide 表单字段小部件,例如像这样:

PDTextField pdfField = (PDTextField) acroForm.getField("info_15a");
pdfField.getWidgets().get(0).setHidden(false);
pdfField.setValue("xxxxxx");

(FillInForm 测试 testFillLikeBarbara)

正如您所说的可以保存 PDF,我假设您对原始 PDF 已加密并且具有使用权签名这一事实没有任何问题。