【发布时间】:2015-01-19 14:40:54
【问题描述】:
我正在使用令牌证书签署文件:
var cp = new Org.BouncyCastle.X509.X509CertificateParser();
var chain = new[] { cp.ReadCertificate(cert.RawData) };
var externalSignature = new X509Certificate2Signature(cert, "SHA-1");
var pdfReader = new PdfReader(origem);
var signedPdf = new FileStream(destino, FileMode.Create);
var pdfStamper = PdfStamper.CreateSignature(pdfReader, signedPdf, '\0');
var sig = pdfStamper.SignatureAppearance;
sig.SetVisibleSignature(new Rectangle(50, 0, 500, 50), pdfReader.NumberOfPages, "Signature");
sig.SignatureRenderingMode = PdfSignatureAppearance.RenderingMode.DESCRIPTION;
sig.Layer2Text = "Assinado digitalmente por " + cert.SubjectName.Name;
sig.Layer2Font = new Font(Font.FontFamily.TIMES_ROMAN, 7);
MakeSignature.SignDetached(sig, externalSignature, chain, null, null, null, 0, CryptoStandard.CMS);
签名文本呈现在页面底部。如何在文档右侧、内容边距之外更改为垂直模式?
谢谢
【问题讨论】:
-
更改
sig.SetVisibleSignature的new Rectangle(50, 0, 500, 50)参数。 -
谢谢,但似乎没有改变文本方向。
-
似乎没有改变文本方向 - 不,它没有。您是否暗示在“垂直模式”中?
-
你说得对,问的问题不够好。我试图找出某种方法将文本自下而上放在垂直列中。打印时,内容为纵向,签名为横向。还是不知道能不能解释清楚。
-
好的。 iText 允许您自己为签名生成外观,例如在你的“垂直模式”。不知道有没有支持的更简单的方法。
标签: c# itextsharp smartcard signature