diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#.slnx b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#.slnx
new file mode 100644
index 00000000..330bc8fe
--- /dev/null
+++ b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#.slnx
@@ -0,0 +1,3 @@
+
+
+
diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Input.pdf b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Input.pdf
new file mode 100644
index 00000000..0a27340e
Binary files /dev/null and b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Input.pdf differ
diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/PDF.pfx b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/PDF.pfx
new file mode 100644
index 00000000..b50733ed
Binary files /dev/null and b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/PDF.pfx differ
diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Student Signature.jpg b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Student Signature.jpg
new file mode 100644
index 00000000..7d4f0a53
Binary files /dev/null and b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Student Signature.jpg differ
diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Teacher Signature.png b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Teacher Signature.png
new file mode 100644
index 00000000..2518aea8
Binary files /dev/null and b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Data/Teacher Signature.png differ
diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#.csproj b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#.csproj
new file mode 100644
index 00000000..9dce2d56
--- /dev/null
+++ b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#.csproj
@@ -0,0 +1,41 @@
+
+
+
+ Exe
+ net8.0
+ How_to_apply_multiple_signatures_to_a_PDF_in_C_
+ enable
+ enable
+
+
+
+
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+ Always
+
+
+ Always
+
+
+ Always
+
+
+
+
+
+
+
+
diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Output/.gitkeep b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Output/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Program.cs b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Program.cs
new file mode 100644
index 00000000..36ba2aa2
--- /dev/null
+++ b/Digital Signature/How-to-apply-multiple-signatures-to-a-PDF-in-C#/How-to-apply-multiple-signatures-to-a-PDF-in-C#/Program.cs
@@ -0,0 +1,59 @@
+using Syncfusion.Pdf;
+using Syncfusion.Pdf.Graphics;
+using Syncfusion.Pdf.Parsing;
+using Syncfusion.Pdf.Security;
+
+namespace Create_PDF
+{
+ class Program
+ {
+ public static void Main(string[] args)
+ {
+ //Register your Syncfusion License Key.
+ Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense("Your License Key");
+ //Load the PDF and call the SignPDF method.
+ FileStream fileStream = new FileStream("Data/Input.pdf", FileMode.Open, FileAccess.ReadWrite);
+ MemoryStream outputStream = SignPDF(fileStream, "signature1", 0);
+ //Call the SignPDF method again for second signer
+ MemoryStream outputStream1 = SignPDF(outputStream, "signature2", 1);
+ //Save the final multi signed PDF document
+ File.WriteAllBytes(@"SignedDocument.pdf", outputStream1.ToArray());
+ }
+
+ public static MemoryStream SignPDF(Stream inputStream, string signatureName, int pageIndex)
+ {
+ // Load the PDF document from the input stream
+ PdfLoadedDocument loadedDocument = new PdfLoadedDocument(inputStream);
+
+ // Get the specified page
+ PdfLoadedPage page = loadedDocument.Pages[pageIndex] as PdfLoadedPage;
+
+ // Load the certificate
+ FileStream certificateStream = new FileStream(Path.GetFullPath(@"Data/PDF.pfx"), FileMode.Open, FileAccess.Read);
+ PdfCertificate certificate = new PdfCertificate(certificateStream, "syncfusion");
+
+ // Create the signature
+ PdfSignature signature = new PdfSignature(loadedDocument, page, certificate, signatureName);
+ signature.Bounds = new Syncfusion.Drawing.RectangleF(400, 740, 90, 20);
+
+ // Choose the image based on the signature name
+ string imagePath = signatureName == "signature1"
+ ? @"Data/Student Signature.jpg"
+ : @"Data/Teacher Signature.png";
+
+ FileStream imageStream = new FileStream(Path.GetFullPath(imagePath), FileMode.Open, FileAccess.Read);
+ PdfBitmap signatureImage = new PdfBitmap(imageStream);
+
+ // Draw the image in the signature appearance
+ signature.Appearance.Normal.Graphics.DrawImage(signatureImage, 0, 0, 90, 20);
+
+ // Save the signed document to a memory stream
+ MemoryStream outputStream = new MemoryStream();
+ loadedDocument.Save(outputStream);
+ loadedDocument.Close(true);
+ outputStream.Position = 0; // Reset stream position for next use
+ return outputStream;
+ }
+
+ }
+}
\ No newline at end of file