首页 > 解决方案 > 如何在 migradoc 中签署 pdf 文件?

问题描述

我有一个使用 iTextSharp 的项目,我需要让它使用 MigraDoc。现在的问题是我需要使用 MigraDoc(或 PdfSharp,如果需要)签署 pdf 文件,但我找不到任何相关信息。

在 iTextSharp 我使用这个代码:

Org.BouncyCastle.X509.X509CertificateParser cp = new Org.BouncyCastle.X509.X509CertificateParser();
Org.BouncyCastle.X509.X509Certificate[] chain  = new Org.BouncyCastle.X509.X509Certificate[] { cp.ReadCertificate(cert.RawData) };
IExternalSignature externalSignature = new X509Certificate2Signature(cert, "SHA-1");

PdfReader  pdfReader  = new PdfReader(SourcePdfFileName, System.Text.Encoding.ASCII.GetBytes("System.Text.Encoding.ASCII.GetBytes"));
FileStream signedPdf  = new FileStream(DestPdfFileName, FileMode.Create);  //the output pdf file
PdfStamper pdfStamper = PdfStamper.CreateSignature(pdfReader, signedPdf, '\0');
PdfSignatureAppearance signatureAppearance = pdfStamper.SignatureAppearance;

signatureAppearance.Reason   = reason;
signatureAppearance.Location = location;
signatureAppearance.SignatureRenderingMode = PdfSignatureAppearance.RenderingMode.DESCRIPTION;

MakeSignature.SignDetached(signatureAppearance, externalSignature, chain, null, null, null, 0, CryptoStandard.CMS);

标签: c#pdfmigradoc

解决方案


推荐阅读