VintaSoft Imaging .NET SDK 15.2: 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