我想在使用java中的itext7填写某些表单字段后锁定PDF文件。
我知道如果我在签名后在某些签名字段上设置 PdfSigFieldLock ,我可以锁定 PDF。
但是我很难弄清楚是否可以对纯文本表单字段执行类似的操作?我猜不是,但想确保我没有遗漏任何东西
“锁定 PDF”整体而言是将 PDF 的当前 MDP(修改检测和预防)值降低到 1 的过程(“除了更新 DSS 和应用文档时间戳之外,不允许进行任何更改”)。
“锁定各个字段”是另一种 MDP 机制。
两者都是通过将 DocMDP 或 FieldMDP 转换的签名应用到 PDF 来激活的。请参阅 ISO 32000-2 第 12.7.5.5 节“签名字段”和第 12.8.2 节“转换方法”。
如果没有 DocMDP 或 FieldMDP 转换的签名,则无法应用 MDP。
因此,不,不可能可以对纯文本表单字段执行类似的操作。
当然,您可以使用 JavaScript 将某些字段后的所有字段设置为只读,例如但这很容易撤消,同时撤消 MDP 锁定也会使关联的签名失效。因此,JavaScript 选项并不真正像 MDP 锁定。