v25.10
إضافة مكون PDF Extractor جديد
- Class PdfExtractor: يحتوي على جميع وظائف المكونات الإضافية: TextExtractor، ImageExtractor، FormExporter.
- Class TextExtractor: سيتم حذفه قريبًا، استخدم PdfExtractor.
- Class ImageExtractor: سيتم حذفه قريبًا، استخدم PdfExtractor.
- Class FormExporter: سيتم حذفه قريبًا، استخدم PdfExtractor.
- Class TextExtractorOptions: تمت إعادة تسميته إلى Class ExtractTextOptions.
- Class ImageExtractorOptions: تمت إعادة تسميته إلى Class ExtractImagesOptions.
- Class FormExportToDsvOptions: تمت إعادة تسميته إلى Class ExtractFormDataToDsvOptions.
- اطلع على The New Plugin Architecture.
مثال على الاستخدام:
يوضح المثال كيفية استخراج محتوى النص من وثيقة PDF.
// إنشاء كائن ExtractTextOptions لتعيين التعليمات
var options = new ExtractTextOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تنفيذ العملية
var results = PdfExtractor.ExtractText(options);
// الحصول على النص المستخرج من كائن ResultContainer
var textExtracted = results.ResultCollection[0].ToString();مثال على الاستخدام:
يوضح المثال كيفية استخراج محتوى النص من وثيقة PDF باستخدام TextFormattingMode.
// إنشاء كائن ExtractTextOptions لتعيين TextFormattingMode
var options = new ExtractTextOptions(TextFormattingMode.Pure);
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تنفيذ العملية
var results = PdfExtractor.ExtractText(options);
// الحصول على النص المستخرج من كائن ResultContainer
var textExtracted = results.ResultCollection[0].ToString();مثال على الاستخدام:
يوضح المثال كيفية استخراج الصور من وثيقة PDF.
// إنشاء ExtractImagesOptions لتعيين التعليمات
var options = new ExtractImagesOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار دليل الإخراج
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// تنفيذ العملية
var results = PdfExtractor.ExtractImages(options);
// الحصول على مسار نتيجة الصورة
var imageExtracted = results.ResultCollection[0].ToFile();مثال على الاستخدام:
يوضح المثال كيفية تصدير قيم النموذج إلى ملف CSV.
// إنشاء كائن ExtractFormDataToDsvOptions لتعيين التعليمات
var options = new ExtractFormDataToDsvOptions(',', true);
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// تنفيذ العملية
PdfExtractor.ExtractFormData(options);إضافة مكون PDF Manager جديد
- Class PdfManager: يحتوي على جميع وظائف المكونات الإضافية: Merger، Optimizer، Splitter، TableGenerator، TocGenerator.
- Class Merger: سيتم حذفه قريبًا.
- Class Optimizer: سيتم حذفه قريبًا، استخدم PdfManager.
- Class Splitter: سيتم حذفه قريبًا، استخدم PdfManager.
- Class TableGenerator: سيتم حذفه قريبًا، استخدم PdfManager.
- Class TocGenerator: سيتم حذفه قريبًا، استخدم PdfManager.
- اطلع على The New Plugin Architecture.
مثال على الاستخدام:
يوضح المثال كيفية دمج وثيقتين PDF.
// إنشاء كائن MergeOptions لتعيين التعليمات
var options = new MergeOptions();
// إضافة مسارات ملفات الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfManager.Merge(options);مثال على الاستخدام:
يوضح المثال كيفية تقسيم وثيقة PDF.
// إنشاء كائن SplitOptions لتعيين التعليمات
var options = new SplitOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسارات ملفات الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// تنفيذ العملية
PdfManager.Split(options);مثال على الاستخدام:
يوضح المثال كيفية تحسين وثيقة PDF.
// إنشاء كائن OptimizeOptions لتعيين التعليمات
var options = new OptimizeOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfManager.Optimize(options);مثال على الاستخدام:
يوضح المثال كيفية تدوير وثيقة PDF.
// إنشاء كائن RotateOptions لتعيين التعليمات
var options = new RotateOptions();
// تعيين التدوير الجديد
options.Rotation = Rotation.On90;
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfManager.Rotate(options);مثال على الاستخدام:
يوضح المثال كيفية تغيير حجم وثيقة PDF.
// إنشاء كائن ResizeOptions لتعيين التعليمات
var options = new ResizeOptions();
// تعيين حجم الصفحة الجديد
options.PageSize = PageSize.A3;
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfManager.Resize(options);مثال على الاستخدام:
يوضح المثال كيفية ضغط وثيقة PDF.
// إنشاء كائن CompressOptions لتعيين التعليمات
var options = new CompressOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfManager.Compress(options);مثال على الاستخدام:
يوضح المثال كيفية إضافة جدول إلى ملف PDF.
// تكوين خيارات الجدول
var options = new TableOptions();
options.InsertPageBefore(1)
.AddTable()
.AddRow()
.AddCell().AddParagraph("Name")
.AddCell().AddParagraph("Age")
.AddRow()
.AddCell().AddParagraph("Bob")
.AddCell().AddParagraph("12")
.AddRow()
.AddCell().AddParagraph("Sam")
.AddCell().AddParagraph("20")
.AddRow()
.AddCell().AddParagraph("Sandy")
.AddCell().AddParagraph("26")
.AddRow()
.AddCell().AddParagraph("Tom")
.AddCell().AddParagraph("12")
.AddRow()
.AddCell().AddParagraph("Jim")
.AddCell().AddParagraph("27");
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_input.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// تنفيذ العملية
PdfManager.AddTable(options);مثال على الاستخدام:
يوضح المثال كيفية إضافة جدول محتويات إلى ملف PDF.
// إنشاء كائن TocOptions لتعيين التعليمات
var options = new TocOptions();
// تعيين العنوان
options.Title = "My Table of Contents";
// تصميم العناوين
options.Headings.Add(new TocHeading("Introduction", 2));
options.Headings.Add(new TocHeading("Chapter I", 3));
options.Headings.Add(new TocHeading("Chapter II", 4));
options.Headings.Add(new TocHeading("Chapter III", 5));
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfManager.AddTableOfContents(options);مثال على الاستخدام:
يوضح المثال كيفية إضافة جدول محتويات إلى ملف PDF مع إنشاء إشارات مرجعية.
// إنشاء كائن TocOptions لتعيين التعليمات
var options = new TocOptions();
// تعيين العنوان
options.Title = "My Table of Contents";
// إنشاء روابط في الإشارات المرجعية
options.GenerateBookmarks = true;
// تصميم العناوين
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
options.Headings.Add(new TocHeading("Chapter I", 3, true, 1));
options.Headings.Add(new TocHeading("Chapter II", 4, true, 1));
options.Headings.Add(new TocHeading("Example A", 4, true, 2));
options.Headings.Add(new TocHeading("Example B", 4, true, 2));
options.Headings.Add(new TocHeading("Example C", 4, true, 2));
options.Headings.Add(new TocHeading("Example D", 4, true, 2));
options.Headings.Add(new TocHeading("Chapter III", 5, true, 1));
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfManager.AddTableOfContents(options);مثال على الاستخدام:
يوضح المثال كيفية إضافة جدول محتويات إلى ملف PDF وحفظه كتيار.
// إنشاء كائن TocOptions لتعيين التعليمات
var options = new TocOptions();
// تعيين العنوان
options.Title = "My Table of Contents";
// تصميم العناوين
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين تيار الإخراج
var outputStream = new MemoryStream();
options.AddOutput(new StreamDataSource(outputStream));
options.CloseOutputStreams = false;
// تنفيذ العملية
PdfManager.AddTableOfContents(options);تحسين سهولة استخدام TableGenerator
- Class TableGenerator: ثابت ولا يتطلب استخدام منشئ.
- Class TableGenerator: تم وضع علامة عليها كـ Obsolete. استخدم PdfManager بدلاً من ذلك.
تحسين سهولة استخدام PdfChatGpt
- Class PdfChatGpt: ثابت ولا يتطلب استخدام منشئ.
- Class PdfChatGptRequestOptions: تمت إضافة خاصية CancellationToken (تم نقلها من PdfChatGpt).
مثال على الاستخدام:
يوضح المثال كيفية استخدام مكون PdfChatGpt من خلال إضافة رسائل إلى الطلب.
var options = new PdfChatGptRequestOptions();
options.AddOutput(new FileDataSource("PdfChatGPT_output.pdf")); // إضافة مسار ملف الإخراج.
options.ApiKey = "Your API key."; // تحتاج إلى توفير المفتاح للوصول إلى الـ API.
options.MaxTokens = 1000; // أقصى عدد من الرموز لتوليد في استكمال الدردشة.
// للإلغاء
// var cancelTokenSource = new CancellationTokenSource();
// var cToken = cancelTokenSource.Token;
// options.CancellationToken = cToken;
// إضافة رسائل الطلب.
options.Messages.Add(new Message
{
Content = "You are a helpful assistant.",
Role = Role.System
});
options.Messages.Add(new Message
{
Content = "What is the biggest pizza diameter ever made?",
Role = Role.User
});
// معالجة الطلب.
await PdfChatGpt.ProcessAsync(options);إصلاح الأخطاء
- إصلاح بيانات التعريف لتحويل html إلى pdf
- إصلاح مشاكل تنسيق النص والصور التي تscaled عند تحويل PDF إلى PDF/A_3b
- إصلاح تقارير الخطأ على الطباعة الناتجة من PDF إلى PDFA
- إصلاح تحويل PDF إلى HTML: تحتوي الصورة الناتجة على الخلفية
- إصلاح تحويل HTML إلى PDF: تظهر بعض الأحرف الصينية كصندوق
- إصلاح تحويل HTML إلى PDF: لا يتم احترام الخط المخصص في Base64
- إصلاح تحويل HTML إلى PDF: لا يتم تطبيق css على حقول النموذج
- إصلاح تحويل HTML إلى PDF: الرسم البياني لا يتم تقديمه بشكل صحيح
- إصلاح تحويل HTML إلى PDF: لا يتم تقديم الأحرف الخاصة بشكل صحيح