במדריך זה נראה לכם כיצד להוסיף חתימה דיגיטלית לקובץ PDF ב-C#, כולל הקוד והשלבים הדרושים כדי להתחיל. בין אם אתה מפתח או משתמש, מדריך זה יספק לך את המידע שאתה צריך כדי להוסיף חתימה דיגיטלית למסמך PDF ב-C#. כמו כן, נדגים כיצד לאמת קובץ PDF חתום דיגיטלית באופן פרוגרמטי ב-C#.
- ספריית C# לחתימה דיגיטלית של PDF
- הוסף חתימות דיגיטליות במסמכי PDF באמצעות C#
- חתימה דיגיטלית על מסמכי PDF עם שרת חותמת זמן ב-C#
- אימות חתימה דיגיטלית ב-PDF באמצעות C#
ספריית C# לחתימות דיגיטליות ב-PDF
כדי להוסיף ולאמת חתימות דיגיטליות ב-PDF, נשתמש ב-Aspose.PDF for .NET. זוהי ספריית PDF רבת עוצמה ליצירה, עריכה, המרה וחתימה דיגיטלית של מסמכי PDF. לא רק זה, אתה יכול לקבל רישיון חינם לחתום על קבצי ה-PDF שלך ללא כל הגבלה.
אתה יכול להוריד Aspose.PDF עבור .NET או להתקין אותו באמצעות NuGet.
PM> Install-Package Aspose.PDF
כיצד להוסיף חתימה דיגיטלית ל-PDF ב-C#
להלן השלבים להוספת חתימה דיגיטלית ל-PDF ב-C#.
- צור אובייקט מהמחלקה Document ואתחול אותו עם הנתיב של מסמך ה-PDF.
- צור אובייקט של מחלקה PdfFileSignature ואתחול אותו עם האובייקט של מחלקת Document.
- צור אובייקט במחלקה PKCS7 ואתחול אותו עם נתיב וסיסמה של אישור.
- צור ואתחול האובייקט של מחלקה DocMDPSignature עבור סוג חתימת MDP.
- צור מלבן למיקום חתימה.
- חתימה דיגיטלית על מסמך PDF באמצעות שיטת PdfFileSignature.Certify().
- שמור את המסמך באמצעות שיטת PdfFileSignature.Save().
קוד C# להוספת חתימה דיגיטלית ל-PDF
דוגמת הקוד הבאה מראה כיצד להוסיף חתימה דיגיטלית ל-PDF ב-C#.
// טען מסמך PDF
using (Document pdfDocument = new Document("Document.pdf"))
{
using (PdfFileSignature signature = new PdfFileSignature(pdfDocument))
{
PKCS7 pkcs = new PKCS7("certificate.pfx", "1234567890"); // Use PKCS7/PKCS7Detached objects
DocMDPSignature docMdpSignature = new DocMDPSignature(pkcs, DocMDPAccessPermissions.FillingInForms);
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(100, 100, 200, 100);
// הגדר מראה חתימה
signature.SignatureAppearance = @"aspose-logo.png";
// צור כל אחד משלושת סוגי החתימות
signature.Certify(1, "Signature Reason", "Contact", "Location", true, rect, docMdpSignature);
// שמור קובץ PDF חתום דיגיטלי
signature.Save("Digitally Signed PDF.pdf");
}
}
C# חתימה דיגיטלית על PDF עם שרת חותמת זמן
אתה יכול גם להוסיף חתימה דיגיטלית למסמך PDF עם שרת TimeStamp על ידי מתן הפרטים שלו באמצעות המחלקה TimestampSettings.
דוגמת הקוד הבאה מראה כיצד לחתום דיגיטלית על מסמך PDF עם שרת TimeStamp ב-C#.
// טען מסמך PDF
using (Document pdfDocument = new Document("Document.pdf"))
{
using (PdfFileSignature signature = new PdfFileSignature(pdfDocument))
{
PKCS7 pkcs = new PKCS7("certificate.pfx", "WebSales"); // Use PKCS7/PKCS7Detached objects
TimestampSettings timestampSettings = new TimestampSettings("https:\\your_timestamp_settings", "user:password"); // User/Password can be omitted
pkcs.TimestampSettings = timestampSettings;
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(100, 100, 200, 100);
// צור כל אחד משלושת סוגי החתימות
signature.Sign(1, "Signature Reason", "Contact", "Location", true, rect, pkcs);
// שמור קובץ PDF פלט
signature.Save("Output.pdf");
}
}
אימות PDF חתום דיגיטלי ב-C#
להלן השלבים לאימות החתימה הדיגיטלית במסמך PDF:
- צור אובייקט מהמחלקה Document ואתחול אותו עם הנתיב של מסמך ה-PDF.
- צור אובייקט במחלקה PdfFileSignature ואתחול אותו עם האובייקט של מחלקת Document.
- גש לכל החתימות של מסמך ה-PDF.
- ודא את תקפות החתימה באמצעות שיטת PdfFileSignature.VerifySigned().
דוגמת הקוד הבאה מראה כיצד לאמת את החתימה הדיגיטלית ב-PDF באמצעות C#.
// טען מסמך PDF
using (Document pdfDocument = new Document("Document.pdf"))
{
using (PdfFileSignature signature = new PdfFileSignature(pdfDocument))
{
IList<string> sigNames = signature.GetSignNames();
if (sigNames.Count > 0) // Any signatures?
{
if (signature.VerifySigned(sigNames[0] as string)) // Verify first one
{
if (signature.IsCertified) // Certified?
{
if (signature.GetAccessPermissions() == DocMDPAccessPermissions.FillingInForms) // Get access permission
{
// עשה משהו
}
}
}
}
}
}
ספריית חתימות דיגיטליות PDF בחינם
אתה יכול לקבל [רישיון זמני] בחינם14 ולהוסיף חתימות דיגיטליות לקובצי PDF ללא כל הגבלה.
סיכום
במאמר זה, למדת כיצד להוסיף חתימות דיגיטליות לקובצי PDF ב-C#.NET. יתר על כן, ראית כיצד לאמת את קבצי ה-PDF החתומים דיגיטלית באופן תכנותי ב-C#. אתה יכול פשוט להתקין את Aspose.PDF עבור .NET ביישומים שלך ולחתום בצורה דיגיטלית על קבצי ה-PDF שלך בצורה חלקה.