我在 PDFBox 中引入一个“可填写”表单并填写输入字段,然后将这些字段设置为只读。我们这样做是为了方便我们而不是最终用户填写 PDF。
我遇到的问题是当用户在 iOS(在某些情况下是 Android)中打开 PDF 时,可填写的字段不可见。其他一切都还在,只是没有填写的字段。如果我在任何笔记本电脑/台式机上打开对他们不起作用的同一个 pdf,一切都在那里。
我是否出于错误的原因使用了可填充字段,是否有更好的方法可以做到这一点,或者有没有一种方法可以让用户在 iOS 上看到这些字段?
这是我正在做的一个简单示例:
public PDDocument fillDynamicPDF(form, field, entry){
try{
PDDocument pdDoc = PDDocument.load(new File("form"))
PDDocumentCatalog pdCatalog = pdDoc.getDocumentCatalog()
PDAcroForm acroForm = pdCatalog.getAcroForm()
acroForm.getField(field).setValue(entry)
acroForm.getField(field).setReadonly(true)
return pdDoc
}catch(e){
log.error e
return null
}
}