我正在尝试通过提供像textField这样的形式在Word中制作一个可填写的pdf,如here所述。接下来,我正在尝试更改表单字段的值,如here所示。但是,当我尝试它时,值不会改变,而且form.getFields().values()
也会给出一个空数组。我已将书签添加到每个字段,但仍然没有更改值。我错过了什么吗?以下是我尝试过的代码:
PdfReader reader = new PdfReader(PATH);
PdfStamper pdfStamper = new PdfStamper(reader,new FileOutputStream(newPATH));
AcroFields form = pdfStamper.getAcroFields();
System.out.println(form.getFields().values());
form.setField("Seller Info","Some Text");
form.setField("Buyer Info","Some Text");
form.setField("NoOfBundles", "3");
form.setField("InvoiceDate","2019/04/22");
pdfStamper.setFormFlattening(true);
pdfStamper.close();
reader.close();
这是我试图创建的可填写的pdf:file谢谢。
经过大量的谷歌搜索,我尝试使用Open Office并添加fields.setGenerateApperances(true)
它按预期工作!同时在导出为pdf时,我们需要选择Create pdf
表单并选择FDF
作为提交表单。