Ric*_*ard 3 pdf sign signature itextsharp
一些插件和程序可以做到这一点; 是否有任何示例或教程如何使用.net和itextSharp?
我需要签名pdf并在所有页面上标记图像,并添加另一个签名.打开文件时,文档上的第一个签名必须有效.
提前致谢.
当您要求打开文件时文档上的第一个签名必须有效时,我假设您最初谈的是在当前的Adobe Reader版本中打开.
在这种情况下,您首先必须意识到允许和不允许的更改取决于第一个签名本身.请查看此答案,了解Adobe自Acrobat和Reader版本9以来考虑的"允许和禁止更改"的信息.
因此,要签名pdf并在所有页面上标记图像,并添加另一个签名,并且不会使(在Adobe软件的眼中)无效的过程中的初始签名,签署的pdf必须
要么未经认证(即初始签名仅仅是批准签名)
或者通过注释,表单填写和数字签名认证(即初始签名是允许这些类型的更改的证书签名),并且有一个空的签名字段供您签名.
如果签名的pdf已包含多个签名,则它们都不会通过锁定信息添加任何其他限制.
(此外,我假设PDF既未加密也未包含动态XFA表单;这会使事情更复杂.)
如果满足这些要求,则可以使用PdfStamper静态PdfStamper方法检索
public static PdfStamper CreateSignature(PdfReader reader, Stream os, char pdfVersion, string tempFile, bool append)
Run Code Online (Sandbox Code Playgroud)
最终bool参数值必须在哪里true(即您必须在追加模式下工作以使初始签名无效).
使用此功能,PdfStamper您可以通过注释在文档页面上添加图像.该iText的在行动-第二版样品TimetableAnnotations3.java/TimetableAnnotations3.cs说明如何添加注解与PdfStampers.
然后像往常一样添加签名,创建新签名字段或使用空签名字段.您可以在白皮书PDF文档的数字签名中找到有关签名过程的详细信息; 可以在sourceforge上找到与该白皮书中的Java样本等效的C#样本.
PS:我在这篇文章中总是强调Adobe软件的眼睛.在谈论经过认证的PDF时,Adobe非常接近PDF标准.对于已签名但未经证明的PDF,Adobe应用类似于为认证文档指定的规则.
| 归档时间: |
|
| 查看次数: |
4485 次 |
| 最近记录: |