![]() |
1
1
您的PDF包含一种特殊类型的数字签名,即使用权签名。用这样一个签名签名的PDF(使用Adobe为此任务生成的私钥)向Adobe Reader发出信号:在处理该PDF时,应激活某些额外的Adobe Reader功能。 但是,如果签名无效,adobereader不仅不会激活那些额外的功能,甚至会取消激活其他一些对未签名文档有效的功能。
你创造了你的
该构造函数不初始化戳入 模式。因此,带戳记的PDF最终被写成一个新的PDF。这将使使用权限签名无效,并且Adobe Reader在再次打开PDF时会限制功能。 顺便说一下,使用Adobe Reader打开PDF时,程序会告诉您:
如果你进去 但是,使用权限签名不会失效。可以使用不同的构造函数执行此操作:
结果不再有使用权签名,尤其是没有失效的签名。因此,adobereader为这个文件提供了它的标准特性。 不幸的是,保存XFA表单并不在其中,因此PDF可以编辑,但不能保存在Adobe Reader中。这可能不是你想要的。 关于这些选项,请参见。 this old answer 混合XFA/AcroForm定义该文件包含一个双表单定义,一个AcroForm表单定义是本机PDF表单类型,另一个XFA表单定义是仅将PDF用作传输容器的XML格式。 XFA表单定义提供了更多功能,但只有Adobe软件才完全支持。对于混合表单,iText对将数据填充到两个表单定义中的支持有限。不过,这可能会失败,具体取决于XFA定义中使用的特性。 在这种情况下,您可能需要删除XFA表单定义,而只使用acroformone。
关于这种方法,请阅读 this answer 还有这个 iText article . |
|
Marcos Silva · 不使用X-Object压缩PDF 7 年前 |
![]() |
Arsiwaldi · 如何将PDF文档拆分为小文档 7 年前 |
![]() |
A. Schmidt · c#itextsharp绝对文本位置多行 7 年前 |