我有一个用Adobe Live Cycle创建的XFA-PDF。 PDF有2个签名字段。 Windows服务必须在不同时间通过代码对每个字段进行签名。 有没有办法使用iTextSharp或其他API来完成此任务? 感谢您抽出宝贵的时间阅读和帮助。
我遵循了示例代码,并且能够使用iTextSharp对整个PDF文件进行签名,但是,这并未对任何实际字段进行签名。 如果可以使用iTextSharp,有人可以通过显示如何指定要签名的字段来帮助我吗?
这是我用来签名文件的代码:
PdfReader reader = new PdfReader(src);
FileOutputStream os = new FileOutputStream(dest);
PdfStamper stamper = PdfStamper.createXmlSignature(reader, os);
XmlSignatureAppearance appearance = stamper.getXmlSignatureAppearance();
appearance.setXmlLocator(new XfaXmlLocator(stamper));
appearance.setXpathConstructor(new XfaXpathConstructor(XfaXpathConstructor.XdpPackage.Datasets));
ExternalSignature signature = new PrivateKeySignature(pk, digestAlgorithm, "BC");
MakeXmlSignature.signXmlDSig(appearance, signature, chain);
但是我想签署XFA签名字段