我正在使用iTextSharp来签署PDF。签名时,它会在文档上标记4个字段:签名人员,时间,原因和位置。我打算做的是在自定义信息的下方(或上面,无关紧要)添加一个字段。
任何想法?
这是生成图章的代码:
PdfStamper stp = PdfStamper.CreateSignature(reader, memoryOut, '\0');
PdfSignatureAppearance sap = stp.SignatureAppearance;
iTextSharp.text.Rectangle rectangle = new iTextSharp.text.Rectangle(100, 100, 500, 200);
sap.SetVisibleSignature(rectangle, stp.Reader.NumberOfPages, null);
sap.SignDate = DateTime.Now;
sap.SetCrypto(null, chain, null, null);
sap.Reason = ssReason;
sap.Contact = ssContact;
sap.Location = ssLocation;
sap.Acro6Layers = true;
//sap.SignatureGraphic = iTextSharp.text.Image.GetInstance(ssImageUrl);
//sap.SignatureGraphic.ScaleToFit(131, 45);
sap.Render = PdfSignatureAppearance.SignatureRender.Description;
答案 0 :(得分:1)
有几个选择:
从PdfTemplate
修改其中一个sap.getLayer(int)
。
致电sap.setLayer2Text()
以包含您的额外信息。
使用图形。您可以将PdfTemplate
包裹在Image
中,这样您就可以绘制任何想要的内容。然后
sap.Render = PdfSignatureAppearance.SignatureRender.GraphicAndDescription
Hack the Source。