VintaSoft Imaging .NET SDK 15.1: Documentation for .NET developer
In This Topic
    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