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