Class PdfSecurity
يمثل مكوّن Documentize.PdfSecurity. يُستخدم لتشفير، فك تشفير، توقيع، وتطهير مستندات PDF.
public static class PdfSecurityوراثة
الأعضاء الموروثة
- object.GetType(),
- object.MemberwiseClone(),
- object.ToString(),
- object.Equals(object?),
- object.Equals(object?, object?),
- object.ReferenceEquals(object?, object?),
- object.GetHashCode()
الدوال
Decrypt(DecryptOptions)
فك تشفير مستند PDF.
public static ResultContainer Decrypt(DecryptOptions options)المعاملات
optionsDecryptOptions: كائن خيارات يحتوي على التعليمات الخاصة بالعملية.
الإرجاع
ResultContainer : كائن يحتوي على نتيجة العملية.
أمثلة
يوضح المثال كيفية فك تشفير مستند PDF.
// إنشاء كائن DecryptOptions لتحديد التعليمات
var options = new DecryptOptions("123456");
// إضافة مسار ملف الإدخال
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// تحديد مسار ملف الإخراج
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfSecurity.Decrypt(options);الاستثناءات
إذا لم يتم تحديد options.
Encrypt(EncryptOptions)
تشفير مستند PDF.
public static ResultContainer Encrypt(EncryptOptions options)المعاملات
optionsEncryptOptions: كائن خيارات يحتوي على التعليمات الخاصة بالعملية.
الإرجاع
ResultContainer : كائن يحتوي على نتيجة العملية.
أمثلة
يوضح المثال كيفية تشفير مستند PDF.
// إنشاء كائن EncryptOptions لتحديد التعليمات
var options = new EncryptOptions("123456", "qwerty");
// إضافة مسار ملف الإدخال
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// تحديد مسار ملف الإخراج
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfSecurity.Encrypt(options);الاستثناءات
إذا لم يتم تحديد options.
Sanitize(SanitizeOptions)
تنقية البيانات المخفية من مستند PDF، مع ضمان إزالة أو تحويل المعلومات الحساسة أو غير الضرورية مثل البيانات الوصفية، المرفقات، التعليقات، جافاسكريبتات، النماذج، الطبقات، فهرس البحث، أو المحتوى الخاص.
public static ResultContainer Sanitize(SanitizeOptions options)المعاملات
optionsSanitizeOptions: كائن خيارات يحتوي على التعليمات الخاصة بالعملية.
الإرجاع
ResultContainer : كائن يحتوي على نتيجة العملية.
أمثلة
يوضح المثال كيفية تنقية مستند PDF.
// إنشاء كائن SanitizeOptions لتحديد ملفات الإدخال والإخراج
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية PDF من تدفق إلى تدفق.
// إعداد تدفقات الإدخال والإخراج
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream = new MemoryStream();
// إنشاء كائن SanitizeOptions لتحديد تدفقات الإدخال والإخراج
var options = new SanitizeOptions(inputStream, outputStream);
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية PDF من ملف إلى تدفق.
// إعداد تدفق الإخراج
using var outputStream = new MemoryStream();
// إنشاء كائن SanitizeOptions لتحديد ملف الإدخال وتدفق الإخراج
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", outputStream);
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية PDF من ملف إلى تدفق مع تعيين خصائص الإدخال والإخراج يدوياً.
// إعداد تدفق الإخراج
using var outputStream = new MemoryStream();
// إنشاء كائن SanitizeOptions
var options = new SanitizeOptions();
// تعيين ملف الإدخال
options.Input = new FileData("path_to_your_pdf_file.pdf");
// تعيين تدفق الإخراج
options.Output = new StreamData(outputStream);
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية PDF دون إزالة البيانات الوصفية.
// إنشاء كائن SanitizeOptions لتحديد ملفات الإدخال والإخراج
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveMetadata = false;
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية PDF دون إزالة المرفقات.
// إنشاء كائن SanitizeOptions لتحديد ملفات الإدخال والإخراج
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveAttachments = false;
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية PDF مع تحويل جميع الصفحات إلى صور وتحديد DPI للنتيجة.
// إنشاء كائن SanitizeOptions لتحديد ملفات الإدخال والإخراج
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// تشغيل التحويل وتحديد DPI
options.ConvertPagesToImages = true;
options.ImageDpi = 200;
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية PDF دون إزالة جافاسكريبتات وإجراءات.
// إنشاء كائن SanitizeOptions لتحديد ملفات الإدخال والإخراج
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveJavaScriptsAndActions = false;
// تنفيذ العملية
PdfSecurity.Sanitize(options);يوضح المثال كيفية تنقية ملف PDF بأقصر طريقة ممكنة.
PdfSecurity.Sanitize(new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf"));الاستثناءات
إذا لم يتم تحديد options.
Sign(SignOptions)
توقيع مستند PDF بالتوقيع الرقمي.
public static ResultContainer Sign(SignOptions options)المعاملات
optionsSignOptions: كائن خيارات يحتوي على التعليمات الخاصة بالعملية.
الإرجاع
ResultContainer : كائن يحتوي على نتيجة العملية.
أمثلة
يوضح المثال كيفية توقيع مستند PDF.
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// تنفيذ العملية
PdfSecurity.Sign(options);يوضح المثال كيفية توقيع مستند PDF باستخدام التدفقات.
// إعداد التدفقات
using var pdfStreamInput = File.OpenRead(@"path_to_your_pdf_file.pdf");
using var pfxStreamInput = File.OpenRead(@"path_to_your_pfx_file.pfx");
using var pdfStreamOutput = new MemoryStream();
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions(pdfStreamInput, pdfStreamOutput, pfxStreamInput, "password_of_your_pfx_file");
// تنفيذ العملية
PdfSecurity.Sign(options);يوضح المثال كيفية توقيع مستند PDF وتعيين معلمات الإدخال والإخراج بشكل منفصل.
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// تعيين مسارات ملفات الإدخال والإخراج
options.Input = new FileData("path_to_your_pdf_file.pdf");
options.Output = new FileData("path_to_result_pdf_file.pdf");
// تنفيذ العملية
PdfSecurity.Sign(options);يوضح المثال كيفية توقيع مستند PDF مع تدفق ملف PFX.
using var pfxStream = File.OpenRead(@"path_to_your_pfx_file.pfx");
var options = new SignOptions(pfxStream, "password_of_your_pfx_file");
// تعيين مسارات ملفات الإدخال والإخراج
options.Input = new FileData("path_to_your_pdf_file.pdf");
options.Output = new FileData("path_to_result_pdf_file.pdf");
// تنفيذ العملية
PdfSecurity.Sign(options);يوضح المثال كيفية توقيع مستند PDF بتوقيع غير مرئي.
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// تكوين توقيع غير مرئي
options.Visible = false;
// تنفيذ العملية
PdfSecurity.Sign(options);يوضح المثال كيفية توقيع مستند PDF مع خيارات إضافية.
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf","path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// معاملات اختيارية
options.Reason = "my Reason";
options.Contact = "my Contact";
options.Location = "my Location";
options.PageNumber = 3;
// تنفيذ العملية
PdfSecurity.Sign(options);يوضح المثال كيفية توقيع ملف PDF بأقصر طريقة ممكنة.
PdfSecurity.Sign(new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file"));يوضح المثال كيفية توقيع مستند PDF مع طابع زمني.
// إنشاء كائن SignOptions لتحديد الطابع الزمني
var options = new SignOptions(new TimestampOptions("server_url"));
// تعيين مسارات ملفات الإدخال والإخراج
options.Input = new FileData("path_to_your_pdf_file.pdf");
options.Output = new FileData("path_to_result_pdf_file.pdf");
// تنفيذ العملية
PdfSecurity.Sign(options);الاستثناءات
إذا لم يتم تحديد options.
Namespace: Documentize Assembly: Documentize.dll