v26.1
ميزة جديدة استخراج الخصائص لمستخرج PDF
- استخراج خصائص PDF: العنوان، المؤلف، الموضوع، الكلمات المفتاحية، عدد الصفحات.
- Class Extractor: تم إضافة طريقة Extract لاستخراج خصائص PDF.
- Class ExtractPropertiesOptions: تمثل خيارات استخراج خصائص PDF لإضافة PdfExtractor.
- Class PdfProperties: تمثل الخصائص ومعلومات التعريف لمستند PDF.
- Interface IHaveInput: تُستخدم للخيارات ذات بيانات إدخال واحدة.
- Class OptionsWithInput: تُستخدم للخيارات ذات بيانات إدخال واحدة.
- وظيفة مجانية بالكامل.
مثال الاستخدام:
The example demonstrates how to Extract Properties (Title, Author, Subject, Keywords, Number of Pages) from PDF file.
// 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 title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;
مثال الاستخدام:
The example demonstrates how to Extract Properties (Title, Author, Subject, Keywords, Number of Pages) from PDF stream.
// Create ExtractPropertiesOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractPropertiesOptions(stream);
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;
مثال الاستخدام:
The example demonstrates how to Extract Properties from PDF file in the shortest possible style.
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(new ExtractPropertiesOptions("path_to_your_pdf_file.pdf"));
التحسينات
- تحسين HTML إلى PDF يدعم النص البديل للصور
- توافق PDF إلى PDFA1b
الأخطاء التي تم إصلاحها
- يحدث خطأ عند محاولة تحسين ملف PDF
- مشكلة في المحاذاة العمودية لحقل النموذج
- تم إصلاح مشكلة عرض النص الياباني في FormField
- مشكلة تنسيق الجداول في التحويل من HTML إلى PDF
- تحسين حجم PDF قبل التحويل من PDF إلى PDF/A يؤدي إلى مخرجات تالفة
- PDF إلى DOC – تم عرض الجدول بشكل غير صحيح
- PDF إلى Excel – مشاكل تنسيق ملف الإخراج
- PDF إلى HTML – ArgumentException أثناء التحويل
- التحويل من PDF إلى HTML يفتقد بعض الروابط
- فقدان النص عند تحويل PDF إلى HTML
v25.12
- Class PdfForm: يحتوي على جميع وظائف الملحقات: FormFlattener، FormExporter. كما يسمح بحذف الحقول والحصول عليها.
- Class FormFlattener: سيتم حذفه قريبًا، استخدم PdfForm.
- Class FormFlattenerOptions: تم إعادة تسميته إلى Class FlattenFieldsOptions.
- Class GetFieldNamesOptions: يسمح بتحديد الخيارات للحصول على أسماء الحقول.
- Class RemoveFieldsOptions: يسمح بتحديد الخيارات لإزالة الحقول.
- راجع The New Plugin Architecture.
مثال الاستخدام:
يوضح المثال كيفية تسوية الحقول في ملف PDF.
// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
/ / Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
/ / Perform the process
PdfForm.Flatten(options);
مثال الاستخدام:
يوضح المثال كيفية الحصول على أسماء الحقول من ملف PDF.
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));
مثال الاستخدام:
يوضح المثال كيفية تصدير قيم النموذج إلى ملف CSV.
// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
/ / Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
/ / Perform the process
PdfForm.Extract(options);
مثال الاستخدام:
يوضح المثال كيفية إزالة الحقول من ملف PDF.
// Create RemoveFieldsOptions object to set instructions
var options = new RemoveFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
/ / Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
/ / Perform the process
PdfForm.Remove(options);
- Method ExtractText: تم إعادة تسميته إلى Method Extract.
- Method ExtractImages: تم إعادة تسميته إلى Method Extract.
- Method ExtractFormData: تم إعادة تسميته إلى Method Extract.
مثال الاستخدام:
يوضح المثال كيفية استخراج النص من مستند PDF.
// Create ExtractTextOptions object to set instructions
var options = new ExtractTextOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();
مثال الاستخدام:
يوضح المثال كيفية استخراج الصور من مستند PDF.
// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();
مثال الاستخدام:
يوضح المثال كيفية تصدير قيم النموذج إلى ملف CSV.
// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
/ / Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
/ / Perform the process
PdfExtractor.Extract(options);
تحسينات
- Class PdfConverterOptions, PdfToXlsOptions - استخدم Class PluginBaseOptions
- تحويل إلى PDF/A-1b
- تحويل إلى PDF/A-2b
أخطاء تم إصلاحها
- تم إصلاح مشاكل تنسيق التحويل من HTML إلى PDF
- فقدت بعض الروابط عند التحويل من PDF إلى HTML
v25.11
إضافة جديدة: محول PDF
- Class PdfConverter: يحتوي على جميع وظائف الإضافات: DocConverter، XlsConverter، HtmlConverter، JpegConverter، PdfAConverter، PngConverter، TiffConverter.
- Class DocConverter: ستحذف قريبًا، استخدم PdfConverter.
- Class XlsConverter: ستحذف قريبًا، استخدم PdfConverter.
- Class HtmlConverter: ستحذف قريبًا، استخدم PdfConverter.
- Class JpegConverter: ستحذف قريبًا، استخدم PdfConverter.
- Class PdfAConverter: ستحذف قريبًا، استخدم PdfConverter.
- Class PngConverter: ستحذف قريبًا، استخدم PdfConverter.
- Class TiffConverter: ستحذف قريبًا، استخدم PdfConverter.
- Class PdfAConvertOptions: أعيدت تسميته إلى Class PdfToPdfAOptions.
- انظر The New Plugin Architecture.
مثال على الاستخدام:
يوضح المثال كيفية تحويل مستند PDF إلى تنسيق Doc.
// إنشاء كائن PdfToDocOptions لتحديد التعليمات
var options = new PdfToDocOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// تنفيذ العملية
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية تحويل PDF إلى مستند XLSX.
// إنشاء كائن PdfToXlsOptions لتحديد التعليمات
var options = new PdfToXlsOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// تنفيذ العملية
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية تحويل PDF إلى مستند HTML.
// إنشاء كائن PdfToHtmlOptions لتعيين نوع البيانات الناتجة كملف يحتوي على موارد مدمجة
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_input.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_output.html"));
// تنفيذ العملية
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية تحويل HTML إلى مستند PDF.
// إنشاء HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_input.html"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// تنفيذ العملية
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية تحويل مستند PDF إلى تنسيق JPEG.
// إنشاء كائن PdfToJpegOptions لتحديد التعليمات
var options = new PdfToJpegOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_input.pdf"));
// تعيين مسار الدليل الناتج
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// تنفيذ العملية
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية تحويل مستند PDF إلى تنسيق PNG.
// إنشاء كائن PdfToPngOptions لتحديد التعليمات
var options = new PdfToPngOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_input.pdf"));
// تعيين مسار الدليل الناتج
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// تنفيذ العملية
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية تحويل مستند PDF إلى تنسيق TIFF.
// إنشاء كائن PdfToTiffOptions لتحديد التعليمات
var options = new PdfToTiffOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار الدليل الناتج
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// تنفيذ العملية
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية تحويل مستند PDF إلى تنسيق PDF/A (PDF/A-3b في هذه الحالة):
// إنشاء فئة الخيارات لإعداد عملية التحويل
var options = new PdfToPdfAOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_3B
};
// إضافة ملف المصدر
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // استبدل بمسار ملفك الفعلي
// إضافة المسار لحفظ الملف المحول
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// تشغيل التحويل
PdfConverter.Convert(options);
مثال على الاستخدام:
يوضح المثال كيفية التحقق من توافق مستند PDF مع تنسيق PDF/A (PDF/A-1a في هذه الحالة):
// إنشاء فئة الخيارات لإعداد عملية التحقق
var options = new PdfAValidateOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_1A
};
// إضافة واحد أو أكثر من الملفات للتحقق
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // استبدل بمسار ملفك الفعلي
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// إضافة المزيد من الملفات حسب الحاجة
// تشغيل التحقق والحصول على النتائج
var resultContainer = PdfConverter.Validate(options);
// تحقق من خاصية resultContainer.ResultCollection للحصول على نتائج التحقق لكل ملف:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
var result = resultContainer.ResultCollection[i];
var validationResult = (PdfAValidationResult) result.Data;
var isValid = validationResult.IsValid; // نتيجة التحقق للوثيقة رقم i
}
إضافة جديدة: أمان PDF
- Class PdfSecurity: يحتوي على جميع وظائف الإضافات: Security، Signature، Timestamp.
- Class Security: ستحذف قريبًا، استخدم PdfSecurity.
- Class Signature: ستحذف قريبًا، استخدم PdfSecurity.
- Class Timestamp: ستحذف قريبًا، استخدم PdfSecurity.
- Class DecryptionOptions: أعيدت تسميته إلى Class DecryptOptions.
- Class EncryptionOptions: أعيدت تسميته إلى Class EncryptOptions.
- Class SignOptions: الآن تحتوي على خصائص لفئة Class Timestamp.
- انظر The New Plugin Architecture.
مثال على الاستخدام:
يوضح المثال كيفية تشفير مستند PDF.
// إنشاء كائن EncryptOptions لتحديد التعليمات
var options = new EncryptOptions("123456", "qwerty");
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfSecurity.Encrypt(options);
مثال على الاستخدام:
يوضح المثال كيفية فك تشفير مستند PDF.
// إنشاء كائن DecryptOptions لتحديد التعليمات
var options = new DecryptOptions("123456");
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfSecurity.Decrypt(options);
مثال على الاستخدام:
يوضح المثال كيفية توقيع مستند PDF.
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfSecurity.Sign(options);
مثال على الاستخدام:
يوضح المثال كيفية توقيع مستند PDF مع توقيت.
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file");
options.TimestampOptions = new TimestampOptions("server_url");
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
PdfSecurity.Sign(options);
إضافة PdfChatGpt مدمجة في PdfManager
- Class PdfChatGpt: ستحذف قريبًا، استخدم PdfManager.
- Class PdfChatGptRequestOptions: أعيدت تسميته إلى Class ChatGptRequestOptions.
خيارات جديدة متاحة للعمل مع ChatGpt
- Class ChatCompletion: يسمح بالتحقق من نتائج الطلب.
- Class Choice: يسمح بالتحقق من نتائج الطلب.
- Class Usage: يسمح بالتحقق من نتائج الطلب.
- Class ChatGptConsts: يسمح باستخدام إعدادات إضافية مثل ModelName، API URL وغير ذلك.
مثال على الاستخدام:
يوضح المثال كيفية استخدام ChatGpt من خلال إضافة رسائل إلى الطلب.
var options = new ChatGptRequestOptions();
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
options.ApiKey = "Your API key."; // تحتاج إلى تقديم المفتاح للوصول إلى واجهة برمجة التطبيقات.
options.MaxTokens = 1000; // الحد الأقصى لعدد الرموز لإنتاجها في إكمال الدردشة.
// إضافة رسائل الطلب.
options.Messages.Add(new Message
{
Content = "أنت مساعد مفيد.",
Role = Role.System
});
options.Messages.Add(new Message
{
Content = "ما هو أكبر قطر بيتزا تم صنعه على الإطلاق؟",
Role = Role.User
});
// معالجة الطلب.
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);
var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // كائن إكمال الدردشة لواجهة برمجة تطبيقات ChatGPT.
تحسينات
- PDF إلى صورة - تحسين أداء التحويل
- PDF إلى TIFF - تحسين سرعة التحويل
- PDF إلى Doc - تحسين الأداء
إصلاح الأخطاء
- إصلاح تحويل HTML إلى PDF - مشكلات التنسيق في الملف الناتج
- إصلاح مشكلة الأداء في تحويل PDF إلى TIFF
- إصلاح تحويل HTML إلى PDF - ملف CSS كموارد خارجية لا ينطبق على ملف PDF الناتج
v25.10
- 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: لا يتم تقديم الأحرف الخاصة بشكل صحيح
v25.9
تحسين قابلية استخدام DocConverter وإضافة وضع إضافي
- Class DocConverter: ثابت ولا يتطلب استخدام مُنشئ.
- Class PdfToDocOptions: تمت إضافة خاصية “Mode” التي تتيح لك تخصيص عملية التحويل.
- Enum DocConversionMode: يتيح لك تخصيص عملية تحويل pdf إلى doc. القيم:
- TextBox: هذا الوضع سريع وجيد للحفاظ على المظهر الأصلي لملف PDF بأكبر قدر ممكن، لكن قابلية تحرير المستند الناتج قد تكون محدودة. يتم تحويل كل كتلة نصية مرئية مجمعة في ملف PDF الأصلي إلى مربع نص في المستند الناتج.
- Flow: وضع التعرف الكامل، يقوم المحرك بالتصنيف والتحليل متعدد المستويات لاستعادة نية مؤلف المستند الأصلي وإنتاج مستند قابل للتحرير بأقصى حد.
مثال للاستخدام:
// المثال يوضح كيفية تحويل مستند PDF إلى تنسيق Doc.
// إنشاء كائن PdfToDocOptions لتحديد التعليمات
var options = new PdfToDocOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// تنفيذ العملية
DocConverter.Process(options);
مثال للاستخدام:
// المثال يوضح كيفية تحويل مستند PDF إلى تنسيق Doc مع تعيين Mode.
// إنشاء كائن PdfToDocOptions لتحديد التعليمات
var options = new PdfToDocOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// تعيين Mode
options.Mode = DocConversionMode.Flow;
// تنفيذ العملية
DocConverter.Process(options);
تحسين قابلية استخدام PdfAConverter
Class PdfAConverter: ثابت ولا يتطلب استخدام مُنشئ.
مثال للاستخدام:
// المثال يوضح كيفية تحويل مستند PDF إلى تنسيق PDF/A (PDF/A-3b في هذه الحالة):
// إنشاء كائن الخيارات لتحديد عملية التحويل
var options = new PdfAConvertOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_3B
};
// إضافة ملف المصدر
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // استبدل بمسار ملفك الفعلي
// إضافة المسار لحفظ الملف المحوّل
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// تنفيذ التحويل
PdfAConverter.Process(options);
مثال للاستخدام:
// المثال يوضح كيفية التحقق من توافق مستند PDF مع تنسيق PDF/A (PDF/A-1a في هذه الحالة):
// إنشاء كائن الخيارات لتحديد عملية التحقق
var options = new PdfAValidateOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_1A
};
// إضافة ملف أو أكثر للتحقق
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // استبدل بمسار ملفك الفعلي
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// إضافة المزيد من الملفات حسب الحاجة
// تنفيذ التحقق والحصول على النتائج
var resultContainer = PdfAConverter.Process(options);
// تحقق من خاصية resultContainer.ResultCollection للحصول على نتائج التحليل لكل ملف:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
var result = resultContainer.ResultCollection[i];
var validationResult = (PdfAValidationResult) result.Data;
var isValid = validationResult.IsValid; // نتيجة التحقق للمستند i
}
تحسين قابلية استخدام Timestamp
Class Timestamp: ثابت ولا يتطلب استخدام مُنشئ.
مثال للاستخدام:
// المثال يوضح كيفية إضافة Timestamp إلى المستند.
// إنشاء كائن AddTimestampOptions لتحديد التعليمات
var options = new AddTimestampOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file", "timestamp_server_url");
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
Timestamp.Process(options);
تحديث الوثائق
تم تحديث الأمثلة، وأضيفت أمثلة إضافية:
- معلومات حول الترخيص والتقييم
- صفحات المنتجات
- مولد جدول PDF
- مولد محتوى PDF
- إضافي Timestamp إلى PDF
- محول PDF/A
- مستخرج صور PDF
- مستخرج نص PDF
- محول PDF إلى XLS
- محول PDF إلى HTML
إصلاح الأخطاء
- تم إصلاح مشكلات مع HTML إلى PDF
- تم إصلاح مشكلات مع PDF إلى PDF/A-2B
- تحسين PDF إلى JPEG: بعض أحرف النص الناتجة كانت مربعة
- تم إصلاح تحويل PDF إلى TIFF
- تم إصلاح استثناءات غير متوقعة عند تحويل PDF إلى JPEG
v25.8
تحسين قابلية استخدام JpegConverter
Class JpegConverter: ثابت ولا يتطلب استخدام مُنشئ.
مثال على الاستخدام:
// المثال يوضح كيفية تحويل مستند PDF إلى تنسيق JPEG.
// إنشاء كائن PdfToJpegOptions لتحديد التعليمات
var options = new PdfToJpegOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_input.pdf"));
// تعيين مسار دليل الإخراج
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// تنفيذ العملية
JpegConverter.Process(options);
تحسين قابلية استخدام PngConverter
Class PngConverter: ثابت ولا يتطلب استخدام مُنشئ.
مثال على الاستخدام:
// المثال يوضح كيفية تحويل مستند PDF إلى تنسيق PNG.
// إنشاء كائن PdfToPngOptions لتحديد التعليمات
var options = new PdfToPngOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_input.pdf"));
// تعيين مسار دليل الإخراج
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// تنفيذ العملية
PngConverter.Process(options);
تحسين قابلية استخدام XlsConverter
- Class XlsConverter: ثابت ولا يتطلب استخدام مُنشئ.
- Class XlsConverter: تم تصحيح الوصف.
مثال على الاستخدام:
// المثال يوضح كيفية تحويل PDF إلى مستند XLSX.
// إنشاء كائن PdfToXlsOptions لتحديد التعليمات
var options = new PdfToXlsOptions();
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// تنفيذ العملية
XlsConverter.Process(options);
تحسين قابلية استخدام Signature
- Class Signature: ثابت ولا يتطلب استخدام مُنشئ.
- Class Signature: تم تصحيح الوصف.
- Class Signature: تمت إزالة الواجهة IPlugin.
مثال على الاستخدام:
// المثال يوضح كيفية توقيع مستند PDF.
// إنشاء كائن SignOptions لتحديد التعليمات
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار ملف الإخراج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
Signature.Process(options);
تعديل المُنشئات لـ PdfToHtmlOptions
تم تحسين المُنشئات والمعاملات.
تم تغيير نص علامة التقييم.
تحديث الوثائق
تم تحديث الأمثلة، وإضافة أمثلة إضافية:
- محول PDF إلى JPEG
- محول PDF إلى PNG
- محول PDF إلى TIFF
- موحد نماذج PDF
- محول HTML
- أمان PDF
- مُحسن PDF
- دمّاج PDF
- مقسم PDF
إصلاح الأخطاء
- إصلاح القضايا مع التعليقات التوضيحية
- إصلاح القضايا بعد تغيير الحجم
- إصلاح تحويل أسماء الخطوط من PDF إلى PDF/A
- إصلاح PDF إلى DOCX - إضافة مسافة في الرأس، ومشكلات أخرى
- إصلاح HTML إلى PDF - خلفية PNG شفافة
- إصلاح PDF المضغوط - تحسين العمل مع Adobe Acrobat
v25.2
إضافة ملحق جديد: مولد جدول المحتويات
- Class TocGenerator: يمثل ملحق Documentize.TocGenerator. يُستخدم لإضافة جدول محتويات إلى مستندات PDF.
- Class TocOptions: يمثل الخيارات لإضافة جدول محتويات إلى المستند بواسطة ملحق Documentize.TocGenerator.
- Class TocHeading: يمثل الخيارات للعناوين أو العناوين الفرعية لجدول المحتويات في المستند بواسطة ملحق Documentize.TocGenerator.
مثال على الاستخدام:
// المثال يوضح كيفية إضافة جدول محتويات إلى ملف PDF.
var options = new TocOptions();
// تعيين العنوان
options.Title = "جدول محتويات";
// توليد الروابط في العلامات
options.GenerateBookmarks = true;
// تصميم العناوين
options.Headings.Add(new TocHeading("المقدمة", 2, false, 1));
options.Headings.Add(new TocHeading("الفصل الأول", 3, true, 1));
options.Headings.Add(new TocHeading("الفصل الثاني", 4, true, 1));
options.Headings.Add(new TocHeading("مثال A", 4, true, 2));
options.Headings.Add(new TocHeading("مثال B", 4, true, 2));
options.Headings.Add(new TocHeading("مثال C", 4, true, 2));
options.Headings.Add(new TocHeading("مثال D", 4, true, 2));
options.Headings.Add(new TocHeading("الفصل الثالث", 5, true, 1));
// إضافة مسار ملف الإدخال
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// تعيين مسار الملف الناتج
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// تنفيذ العملية
TocGenerator.Process(options);
إصلاحات طفيفة
- تحسين تلميحات الفصول والأمثلة.
- تحديث العلامات المائية.
- تحسين تحويل PDF إلى XSLX.
- تحسين تحويل PDF إلى PDF/A-1a.