نحن سعداء بالإعلان عن إصدار GroupDocs.Conversion for Python v26.9، المتاح اعتبارًا من سبتمبر 2026. يحدّث هذا الإصدار محرك GroupDocs.Conversion الأساسي من الإصدار 26.3 إلى 26.8، ويضيف واجهة برمجة تطبيقات ConversionEvents لمراقبة التحويل في الوقت الفعلي، ويدعم أرشيفات XAR، ورسومات draw.io، ورسومات Mermaid، ويضم عدة خيارات جديدة للتحميل والتحويل. كما يحل مشكلات التوافق الحرجة على إصدارات Python 3.5–3.10 ويصلح عيوبًا قديمة تؤثر على الخصائص من نوع delegate والوسائط من نوع enum.
ما الجديد في هذا الإصدار
- [ميزة] إضافة دعم
ConversionEventsلمراقبة بدء التحويل، التقدم، إكمال كل صفحة ومستند، الفشل واستبدال الخطوط (CONVERSIONPYTHON-93) - [ميزة] إضافة دعم صيغ جديدة — أرشيفات XAR، رسومات draw.io ورسومات Mermaid (
.mmd) (CONVERSIONPYTHON-94) - [ميزة] إضافة
CadLoadOptions.layout_scopeلتقييد تحويل CAD على مساحة النموذج، تخطيطات مساحة الورق، أو كليهما (CONVERSIONPYTHON-95) - [ميزة] إضافة
MarkdownOptions.image_saving_callbackللتحكم في مكان حفظ الصور المستخرجة إلى Markdown (CONVERSIONPYTHON-96) - [ميزة] إضافة
EmailLoadOptions.page_layout_optionsوWebLoadOptions.margin_settings/orientation_settings/size_settings(CONVERSIONPYTHON-97) - [ميزة] إضافة
ImageConvertOptions.min_resolutionوcap_resolution_to_page_content(CONVERSIONPYTHON-98) - [ميزة] إضافة
WordProcessingLoadOptions.auto_detect_rtl_direction(CONVERSIONPYTHON-99) - [ميزة] إضافة
MissingDependencyExceptionلتوضيح الفشل عندما تكون إحدى تبعيات المحرك الاختيارية غير موجودة (CONVERSIONPYTHON-100) - [تحسين] تحديث محرك GroupDocs.Conversion من 26.3 إلى 26.8 (CONVERSIONPYTHON-101)
- [تحسين] إزالة الوحدة المكررة
groupdocs.conversion.file_types— استخدمgroupdocs.conversion.filetypes(CONVERSIONPYTHON-102) - [تحسين] إعادة تسمية
PdfOptions.remove_pdf_acomplianceإلىremove_pdf_a_compliance(CONVERSIONPYTHON-103) - [تحسين] إضافة قسم دليل المطور وصفحات
groupdocs.conversion.integration.*إلى مرجع API (CONVERSIONPYTHON-104) - [إصلاح] عدم القدرة على استيراد الوحدة عند استخدام Python 3.5 – 3.7 (CONVERSIONPYTHON-91)
- [إصلاح] خطأ وقت التشغيل عند تمرير وسيط Enum في إصدارات Python 3.8 – 3.10 (CONVERSIONPYTHON-92)
- [إصلاح] فهرس
itemعلى*DocumentInfoوPossibleConversionsهو خاصية ولا يمكن استدعاؤه (CONVERSIONPYTHON-105) - [إصلاح] لا يمكن تعيين الخصائص من نوع delegate من Python (
Object must implement IConvertible) (CONVERSIONPYTHON-106) - [إصلاح] تم توثيق الخصائص من نوع delegate بالنوع الخاطئ في ملفات stubs وسلاسل الوثائق (CONVERSIONPYTHON-107)
تغييرات API العامة
فئات جديدة
| الفئة | الوحدة |
|---|---|
ConversionEvents |
groupdocs.conversion |
FontSubstitutionContext |
groupdocs.conversion.contracts |
XarDocumentInfo |
groupdocs.conversion.contracts |
MissingDependencyException |
groupdocs.conversion.exceptions |
CadLayoutScope |
groupdocs.conversion.options.load |
IPageLayoutOptions |
groupdocs.conversion.options.load |
MarkdownImageSavingArgs, IMarkdownImageSavingCallback |
groupdocs.conversion.options.convert |
IConversionHandlersStage, IConversionByPageHandlersStage |
groupdocs.conversion.fluent |
أعضاء جدد في الفئات الموجودة
FluentConverter.with_events(...)، وكذلك نفس الطريقة فيIConversionFromوIConversionSettingsConverter(...)— أربعة مُحملات بنائية جديدة تقبلConversionEventsCadLoadOptions.layout_scopeEmailLoadOptions.page_layout_optionsWebLoadOptions.margin_settings،.orientation_settings،.size_settingsMarkdownOptions.image_saving_callbackImageConvertOptions.min_resolution،.cap_resolution_to_page_contentWordProcessingLoadOptions.auto_detect_rtl_directionCompressionFileType.XAR،DiagramFileType.DRAWIO،DiagramFileType.MMD
تم الإزالة — groupdocs.conversion.file_types
تم حذف الوحدة groupdocs.conversion.file_types و 23 فئةً منها. الفئات نفسها لم تُحذف — كل واحدة منها لا تزال موجودة، دون تغيير، في groupdocs.conversion.filetypes.
إذا كنت تستورد منها، غيّر الاستيراد — لا شيء آخر:
# قبل
from groupdocs.conversion.file_types import WordProcessingFileType
# بعد
from groupdocs.conversion.filetypes import WordProcessingFileType
تم إعادة التسمية — PdfOptions.remove_pdf_acompliance
# قبل
options.remove_pdf_acompliance = True
# بعد
options.remove_pdf_a_compliance = True
ميزات جديدة
أحداث التحويل
ConversionEvents تتيح لك مراقبة التحويل أثناء تشغيله — التقدم، إكمال كل صفحة ومستند، الفشل، واستبدال الخطوط. اربط دوال Python عادية:
from groupdocs.conversion import ConversionEvents, Converter, ConverterSettings
from groupdocs.conversion.options.convert import PdfConvertOptions
events = ConversionEvents()
events.on_conversion_started = lambda: print("started")
events.on_conversion_progress = lambda percent: print(f"{percent}%")
events.on_document_converted = lambda ctx: print("document done")
events.on_font_substituted = lambda ctx: print(
f"{ctx.original_font_name} -> {ctx.substitute_font_name} ({ctx.reason})")
events.on_conversion_completed = lambda: print("completed")
with Converter("business-plan.docx", ConverterSettings(), events) as converter:
converter.convert("business-plan.pdf", PdfConvertOptions())
لاحظ أن المُنشئ يأخذ (path, settings, events) — لا يوجد تحميل زائد (path, events)، لذا مرّر ConverterSettings() حتى وإن لم تحتاج إلى ضبط أي شيء.
الخطاطيف المتاحة هي on_conversion_started، on_conversion_progress، on_conversion_completed، on_document_converted، on_document_failed، on_page_converted، on_page_failed، on_compression_completed و on_font_substituted.
صيغ جديدة
| الصيغة | ثابت نوع الملف | ملاحظات |
|---|---|---|
| أرشيف XAR | CompressionFileType.XAR |
يتوفر أيضًا XarDocumentInfo للفحص |
| رسم draw.io | DiagramFileType.DRAWIO |
— |
| رسم Mermaid | DiagramFileType.MMD |
— |
نطاق تخطيط CAD
from groupdocs.conversion.options.load import CadLayoutScope, CadLoadOptions
load_options = CadLoadOptions()
load_options.layout_scope = CadLayoutScope.MODEL # MODEL | LAYOUTS | BOTH
BOTH هو الإعداد الافتراضي ولا يقيد التحويل.
مثال على الشيفرة
from groupdocs.conversion import ConversionEvents, Converter, ConverterSettings
from groupdocs.conversion.options.convert import PdfConvertOptions
events = ConversionEvents()
events.on_conversion_started = lambda: print("started")
events.on_conversion_progress = lambda percent: print(f"{percent}%")
events.on_document_converted = lambda ctx: print("document done")
events.on_font_substituted = lambda ctx: print(
f"{ctx.original_font_name} -> {ctx.substitute_font_name} ({ctx.reason})")
events.on_conversion_completed = lambda: print("completed")
with Converter("business-plan.docx", ConverterSettings(), events) as converter:
converter.convert("business-plan.pdf", PdfConvertOptions())
كيفية الحصول على التحديث
PyPI
pip install groupdocs-conversion-net==26.9.0
التحميل المباشر
حمّل من صفحة GroupDocs.Conversion للبايثون عبر .NET 26.9 .