PDF: How to add digital signature with image appearance to a PDF document?
In This Topic
Here is C#/VB.NET code that demonstrates how to add digital signature with image appearance to a PDF document using
PdfPageDigitalSignatureHelper class:
using System.Drawing;
using System.Security.Cryptography.X509Certificates;
using Vintasoft.Imaging.Pdf;
/// <summary>
/// Adds digital signature with image appearance to a PDF page.
/// </summary>
public class PdfPageDigitalSignatureHelper_ImageAppearance
{
public static void Run()
{
// get the X509 certificate from .pfx-file
using (X509Certificate2 certificate = new X509Certificate2("TestCertificate.pfx", "test"))
{
// create a helper that alows to add digital signature to a PDF document
PdfPageDigitalSignatureHelper digitalSignatureHelper =
new PdfPageDigitalSignatureHelper(certificate, new RectangleF(20, 20, 250, 100));
// set signature information
digitalSignatureHelper.SignerName = "Mr. X";
digitalSignatureHelper.SigningReason = "Approval";
digitalSignatureHelper.SigningLocation = "My Location";
digitalSignatureHelper.SignerContactInfo = "Phone: 9999-123-45-67";
// set the name of image file that defines the signature appearance
digitalSignatureHelper.SignatureImageFilename = "SignatureImage.svg";
// add digital signature to the first PDF page, sign PDF document and save PDF document to the output file
digitalSignatureHelper.SignDocument("TestDocumentToSign.pdf", "TestDocumentToSign-signed.pdf", 0);
}
}
}
Imports System.Drawing
Imports System.Security.Cryptography.X509Certificates
Imports Vintasoft.Imaging.Pdf
''' <summary>
''' Adds digital signature with image appearance to a PDF page.
''' </summary>
Public Class PdfPageDigitalSignatureHelper_ImageAppearance
Public Shared Sub Run()
' get the X509 certificate from .pfx-file
Using certificate As New X509Certificate2("TestCertificate.pfx", "test")
' create a helper that alows to add digital signature to a PDF document
Dim digitalSignatureHelper As New PdfPageDigitalSignatureHelper(certificate, New RectangleF(20, 20, 250, 100))
' set signature information
digitalSignatureHelper.SignerName = "Mr. X"
digitalSignatureHelper.SigningReason = "Approval"
digitalSignatureHelper.SigningLocation = "My Location"
digitalSignatureHelper.SignerContactInfo = "Phone: 9999-123-45-67"
' set the name of image file that defines the signature appearance
digitalSignatureHelper.SignatureImageFilename = "SignatureImage.svg"
' add digital signature to the first PDF page, sign PDF document and save PDF document to the output file
digitalSignatureHelper.SignDocument("TestDocumentToSign.pdf", "TestDocumentToSign-signed.pdf", 0)
End Using
End Sub
End Class
Here is C#/VB.NET code that demonstrates how to add digital signature with image appearance to a PDF document using
PdfPage.AddVisibleDigitalSignatureWithImageAppearance method:
using System.Drawing;
using System.Security.Cryptography.X509Certificates;
using Vintasoft.Imaging.Pdf;
using Vintasoft.Imaging.Pdf.Tree;
/// <summary>
/// Adds digital signature with image appearance to a PDF page.
/// </summary>
public class PdfPage_AddVisibleDigitalSignatureWithImageAppearanceExample
{
public static void Run()
{
// get the X509 certificate from .pfx-file
using (X509Certificate2 certificate = new X509Certificate2("TestCertificate.pfx", "test"))
// open PDF document
using (PdfDocument pdfDocument = new PdfDocument("TestDocumentToSign.pdf"))
{
// get the first PDF page
PdfPage pdfPage = pdfDocument.Pages[0];
// add visible digital signature with image appearance to the PDF page
pdfPage.AddVisibleDigitalSignatureWithImageAppearance(
certificate, "Signature", "Approve document", "SignatureImage.svg",
new RectangleF(20, 20, 250, 100), false);
// sign PDF document and save PDF document to the output file
pdfDocument.SaveChanges("TestDocumentToSign-signed-image.pdf");
}
}
}
Imports System.Drawing
Imports System.Security.Cryptography.X509Certificates
Imports Vintasoft.Imaging.Pdf
Imports Vintasoft.Imaging.Pdf.Tree
''' <summary>
''' Adds digital signature with image appearance to a PDF page.
''' </summary>
Public Class PdfPage_AddVisibleDigitalSignatureWithImageAppearanceExample
Public Shared Sub Run()
' get the X509 certificate from .pfx-file
Using certificate As New X509Certificate2("TestCertificate.pfx", "test")
' open PDF document
Using pdfDocument As New PdfDocument("TestDocumentToSign.pdf")
' get the first PDF page
Dim pdfPage As PdfPage = pdfDocument.Pages(0)
' add visible digital signature with image appearance to the PDF page
pdfPage.AddVisibleDigitalSignatureWithImageAppearance(certificate, "Signature", _
"Approve document", "SignatureImage.svg", New RectangleF(20, 20, 250, 100), False)
' sign PDF document and save PDF document to the output file
pdfDocument.SaveChanges("TestDocumentToSign-signed-image.pdf")
End Using
End Using
End Sub
End Class