Category / Section
How to digitally sign PDF documents using .pfx certificates in UWP
1 min read
We can digitally sign PDF document using .pfx certificates with the help of PdfCertificate and PdfSignature classes and find the code snippet and sample link below.
Stream inputStream = typeof(MainPage).GetTypeInfo().Assembly.GetManifestResourceStream("DigitalSignature.Assets.Barcode.pdf"); Stream certificateStream = typeof(MainPage).GetTypeInfo().Assembly.GetManifestResourceStream("DigitalSignature.Assets.PDF.pfx"); Stream imageStream = typeof(MainPage).GetTypeInfo().Assembly.GetManifestResourceStream("DigitalSignature.Assets.syncfusion_logo.gif"); //Loads a input pdf document. PdfLoadedDocument loadedDocument = new PdfLoadedDocument(inputStream); //Gets the first page of the document. PdfLoadedPage page = loadedDocument.Pages[0] as PdfLoadedPage; //Creates a certificate instance from PFX file stream with private key. PdfCertificate certificate = new PdfCertificate(certificateStream, "syncfusion"); //Creates a pdf signature using certificate.. PdfSignature signature = new PdfSignature(loadedDocument, page, certificate, "SignatureField"); signature.Bounds = new System.Drawing.RectangleF(50, 0, 100, 100); PdfImage image = PdfImage.FromStream(imageStream); page.Graphics.DrawImage(image, new System.Drawing.RectangleF(50, 0, 100, 100)); MemoryStream stream = new MemoryStream(); //Save the document in stream. loadedDocument.Save(stream); SaveFile(stream, "output.pdf"); //Close the document loadedDocument.Close(true);
Sample link:
https://www.syncfusion.com/downloads/support/directtrac/general/ze/DigitalSignature-274645343.zip