v26.10

الحقول المتغيرة في PdfProperties

  • الحقل Created هو DateTime (ليس DateTime؟). يُعيد DateTime.MinValue إذا لم يحتوي المستند على قيمة.
  • الحقل Modified هو DateTime (ليس DateTime؟). يُعيد DateTime.MinValue إذا لم يحتوي المستند على قيمة.

مثال على الاستخدام:

المثال يوضح كيفية استخراج الخصائص (Created، Modified) من ملف PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;

إضافة مُنشئ فارغ إلى GetFieldNamesOptions

يمكن أن يكون ذلك مفيدًا في عمليات التكرار دون الحاجة لإنشاء نسخة جديدة.

مثال على الاستخدام:

var options = new GetFieldNamesOptions();
// Set input from a file
options.Input = new FileData("path_to_your_pdf_file.pdf");
// Or set input from a stream
// options.Input = new StreamData(stream);
var results = PdfForm.GetNames(options);

إزالة الفئة Splitter

  • يتم إيقاف تنفيذ الإضافات السابقة تدريجيًا. تم استبدال وظائف هذه الفئة بالفئة PdfManager.
  • Class Splitter: تم إزالته، استخدم PdfManager.

مثال على الاستخدام:

المثال يوضح كيفية تقسيم تدفق PDF إلى صفحات منفردة وحفظها كملفات.

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file paths
options.AddOutput(new FileData("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file_2.pdf"));
// Perform the process
PdfManager.Split(options);

مثال على الاستخدام:

هذا المثال يوضح كيفية تقسيم تدفق PDF إلى صفحات منفردة وحفظها كتيارات (streams).

// Prepare input and output streams
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream1 = new MemoryStream();
using var outputStream2 = new MemoryStream();

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input stream
options.AddInput(inputStream);
// Set output streams
options.AddOutput(outputStream1);
options.AddOutput(outputStream2);
// Prevent the closing of output streams
options.CloseOutputStreams = false;
// Perform the process
PdfManager.Split(options);

إزالة الفئة Merger

  • يتم إيقاف تنفيذ الإضافات السابقة تدريجيًا. تم استبدال وظائف هذه الفئة بالفئة PdfManager.
  • Class Merger: تم إزالته، استخدم PdfManager.

مثال على الاستخدام:

المثال يوضح كيفية دمج وثيقتين PDF.

// Create MergeOptions object to set instructions
var options = new MergeOptions();
// Add input file paths
options.AddInput(new FileData("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileData("path_to_your_pdf_file_2.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Merge(options);

إصلاحات أخرى

🖥️ HTML إلى PDF

  • تم إصلاح تحويل HTML إلى PDF عندما تستغرق الجداول العديدة وقتًا طويلاً
  • تم إصلاح مخرجات HTML إلى PDF التي لا تُطبع بشكل صحيح في Chrome
  • تم إصلاح تحويل HTML إلى PDF الذي كان يفتقد محتوى نص الجدول

🌐 PDF إلى HTML

  • تم إصلاح تحويل PDF إلى HTML الذي كان يفتقد النص والرسومات
  • تم إصلاح تحويل PDF إلى HTML الذي كان يعرض شعارًا مكسورًا في التذييل

📄 PDF إلى DOC/XLS

  • تم إصلاح تحويل PDF إلى DOC الذي كان يستغرق وقتًا طويلاً
  • تم إصلاح تحويل PDF إلى Excel الذي كان ينتج مخرجات غير صحيحة

🖼️ PDF إلى PNG

  • تم إصلاح تحويل PDF إلى PNG حيث كان النص في الصفحة الأولى مشوَّهًا
  • تم إصلاح تحويل PDF إلى PNG الذي كان يتسبب في رمي InvalidOperationException

🖼️ PDF إلى TIFF

  • تم إصلاح تحويل PDF إلى TIFF الذي لم يُحوّل جميع الصفحات
  • تم إصلاح تحويل PDF إلى TIFF الذي كان ينتج صورًا سوداء

📑 PDF إلى PDF/A

  • تم إصلاح تحويل PDF إلى PDF/A الذي كان يضيف رموزًا بيضاء إلى المخرج
  • تم إصلاح تحويل PDF إلى PDF/A الذي كان يغيّر ألوان حدود المستطيلات
  • تم إصلاح إخراج PDF/A‑1b الذي كان يفشل في اختبار ما قبل الطيران (preflight)
  • تم إصلاح تحويل PDF/A الذي كان ينتج BaseFont غير صالح في UTF‑8
  • تم إصلاح تحويل PDF/A الذي كان يغيّر النص الظاهر
  • تم إصلاح تحويل PDF/A‑2b الذي كان ي_throw ArgumentOutOfRangeException
  • تم إصلاح تحويل PDF/A‑2b الذي كان ي_throw NullReferenceException

📄 عمليات المستند

  • تم إصلاح دمج PDF الذي كان ي_throw ArgumentException لمفتاح غير صالح
  • تم إصلاح تسوية الحقول التي كانت تُغيّر توجيه النص
  • تم إصلاح استخراج النص غير الصحيح من مستندات PDF
06‏/10‏/2026
 عربي