我是 pdfbox 的新手,但我有一个奇怪的问题。我加载这个pdf,其中给定的复选框已经被选中(我看到它打开pdf并处于调试模式),但是当我通过邮件发送这个pdf时,给定的复选框未被选中。你有什么建议吗?
private fun populateTemplateFields(
pdfTemplate: PDDocument,
newMail: String,
)
{
val acroForm = pdfTemplate.documentCatalog.acroForm
val checkbox = acroForm.getField("chkbox1") as PDCheckBox
checkbox.check()
acroForm.getField("new_mail").setValue(newMail)
}
当我检索复选框时,我已经看到 checkbox.isChecked 为 true,我尝试使用 check() 方法“强制”它,但随后查看 pdf 时结果复选框未选中。您有什么建议吗?谢谢
这就是我检索 PDDocument 的方式
val pdf = this::class.java.classLoader.getResourceAsStream("pdf/role.pdf")
?: throw FileNotFoundException("PDF template not found at pdf/role.pdf")
val pdfTemplate = Loader.loadPDF(pdf.readAllBytes()).
请注意,其他属性(如 newMail)已正确设置