PdfDocumentSigner Class
A helper class used to apply signatures to PDF documents.
Namespace: DevExpress.Pdf
Assembly: DevExpress.Docs.v25.1.dll
NuGet Package: DevExpress.Document.Processor
Declaration
Remarks
Use the PdfDocumentSigner instance to apply signatures to new or existing signature fields. Call the PdfDocumentSigner.SaveDocument method to sign and save the PDF document.
The PdfSignatureBuilder class allows you to define signature data. The PDF Document API supports PKCS#7 signatures. You can use the Pkcs7Signer class to provide PKCS#7 signatures. Create a Pkcs7SignerBase descendant to use a custom object to create the PKCS#7 signature.
Example
The following code snippet executes the following actions:
- Creates a PKCS#7 signature with a certificate stored in a .PFX file,
- Applies a digital signature to a new and existing form field,
- Signs a document with these signatures.
using System;
using DevExpress.Pdf;
using System.Diagnostics;
using System.IO;
using DevExpress.Office.DigitalSignatures;
// Load a document to sign:
using (var signer = new PdfDocumentSigner("Document.pdf"))
{
// Specify the name and location of the signature field
var signatureFieldInfo = new PdfSignatureFieldInfo(1);
signatureFieldInfo.Name = "SignatureField";
signatureFieldInfo.SignatureBounds = new PdfRectangle(20, 20, 150, 150);
signatureFieldInfo.RotationAngle = PdfAcroFormFieldRotation.Rotate90;
// Create a PKCS#7 signature:
Pkcs7Signer pkcs7Signature = new Pkcs7Signer("Signing Documents/certificate.pfx", "123",
HashAlgorithmType.SHA256);
// Apply a signature to a newly created signature field:
var cooperSignature = new PdfSignatureBuilder(pkcs7Signature, signatureFieldInfo);
// Specify an image and signer information:
cooperSignature.SetImageData(File.ReadAllBytes("Signing Documents//JaneCooper.jpg"));
cooperSignature.Location = "USA";
cooperSignature.Name = "Jane Cooper";
cooperSignature.Reason = "Acknowledgement";
// Apply a signature to an existing form field:
var santuzzaSignature = new PdfSignatureBuilder(pkcs7Signature, "Sign");
// Specify an image and signer information:
santuzzaSignature.SetImageData(File.ReadAllBytes("Signing Documents//SantuzzaValentina.jpg"));
santuzzaSignature.Location = "Australia";
santuzzaSignature.Name = "Santuzza Valentina";
santuzzaSignature.Reason = "I Agree";
// Add signatures to an array:
PdfSignatureBuilder[] signatures = { cooperSignature, santuzzaSignature };
// Sign and save the document:
signer.SaveDocument("SignedDocument.pdf", signatures);
}
Implements
Inheritance
Object
PdfDocumentSigner
See Also