نحن سعداء بالإعلان عن إصدار GroupDocs.Viewer for Python 26.9، المتاح اعتبارًا من سبتمبر 2026. يحدّث هذا الإصدار محرك GroupDocs.Viewer الأساسي من 26.4 إلى 26.8، ويضيف دعمًا لتصيير ملفات Microsoft Project على نظامي Linux و macOS، ويُدخل أدوات ترقيم الصفحات والتحكم في الدقة لمستندات Word، ويزيل الاعتماد على libgdiplus في المنصات غير Windows، ويعيد التوافق مع Python 3.5–3.7. تم تحديث بيئة تشغيل .NET المدمجة إلى 10.0.12، وتضم الآن واجهة برمجة التطبيقات Python سلاسل توثيقية (docstrings) كاملة مع أمثلة شفرة.
ما الجديد في هذا الإصدار
- [Feature] إضافة
WordProcessingOptions.page_number_locationوتعدادWordsPageNumberLocationلوضع أرقام الصفحات على مستندات Word المُصَغَّرة (VIEWERPYTHON-153) - [Feature] إضافة
WordProcessingOptions.horizontal_resolution/vertical_resolutionلتحديد DPI لإخراج PNG و JPEG لمستندات Word (VIEWERPYTHON-154) - [Feature] إضافة دعم لتصيير ملفات Microsoft Project (MPP, MPT, MPX) على Linux و macOS (VIEWERPYTHON-155)
- [Enhancement] تحديث محرك GroupDocs.Viewer من 26.4 إلى 26.8 (VIEWERPYTHON-156)
- [Enhancement] تحديث بيئة تشغيل .NET المدمجة من 10.0.0 إلى 10.0.12 (VIEWERPYTHON-157)
- [Enhancement] إزالة متطلب
libgdiplus/mono-libgdiplusعلى Linux و macOS (VIEWERPYTHON-158) - [Enhancement] توفير نفس واجهة برمجة التطبيقات Python على جميع المنصات — حزم Linux و macOS تكتسب
ProjectManagementOptionsوأعضاءFileTypeالخاصة بـ Project و Photoshop و Illustrator و OneNote (VIEWERPYTHON-159) - [Enhancement] إضافة سلاسل توثيقية (docstrings) تشمل الملخصات، المعلمات، وأمثلة الشفرة إلى واجهة برمجة التطبيقات Python (VIEWERPYTHON-160)
- [Enhancement] إضافة قسم دليل المطور إلى مرجع API (VIEWERPYTHON-161)
- [Fix] عدم إمكانية استخدام الحزمة على Python 3.5 – 3.7 (VIEWERPYTHON-162)
- [Fix] pip يثبت الحزمة على إصدارات Linux و macOS التي لا يمكنها تشغيلها (VIEWERPYTHON-163)
تغييرات في API العامة
لم يتم حذف أو إعادة تسمية أي شيء.
الأنواع الجديدة
| النوع | الوحدة | الوصف |
|---|---|---|
WordsPageNumberLocation |
groupdocs.viewer.options |
تحديد مكان وضع أرقام الصفحات على مستند Word مُصَغَّر: NOT_APPLY (الافتراضي)، TOP_LEFT، TOP_CENTER، TOP_RIGHT، BOTTOM_LEFT، BOTTOM_CENTER، BOTTOM_RIGHT |
الأعضاء الجدد في الفئات الموجودة
| الفئة | العضو | الوصف |
|---|---|---|
WordProcessingOptions |
page_number_location |
ترقيم الصفحات لتطبيقه أثناء التصيير (WordsPageNumberLocation) |
WordProcessingOptions |
horizontal_resolution |
DPI الأفقي لإخراج PNG / JPEG، 72 – 600 (الافتراضي 96) |
WordProcessingOptions |
vertical_resolution |
DPI العمودي لإخراج PNG / JPEG، 72 – 600 (الافتراضي 96) |
الجديد على Linux و macOS
ProjectManagementOptions، BaseViewOptions.project_management_options و FileType.MPP، MPT، MPX، PSD، PSB، AI، ONE كانت متوفرة بالفعل على Windows والآن متاحة في حزم Linux و macOS أيضًا — انظر واجهة برمجة تطبيقات Python واحدة على كل منصة.
الميزات الجديدة
ملفات Microsoft Project على Linux و macOS
كانت ملفات MPP و MPT و MPX تُصَغَّر على Windows فقط؛ على Linux و macOS كانت تفشل مع الخطأ Failed to detect file type. الآن محرك 26.8 يصَغِّرها على جميع المنصات، باستخدام نفس ProjectManagementOptions كما في Windows:
from groupdocs.viewer import Viewer
from groupdocs.viewer.options import HtmlViewOptions, TimeUnit
with Viewer("project.mpp") as viewer:
options = HtmlViewOptions.for_embedded_resources("page_{0}.html")
options.project_management_options.time_unit = TimeUnit.DAYS
viewer.view(options)
على Linux، قم أولاً بتثبيت خطوط Microsoft الأساسية (ttf-mscorefonts-installer): بدونها يفشل تصيير المشروع مع الخطأ Cannot find fallback font 'Generic Sans Serif'، ولا تُرضي البدائل المتوافقة مثل Liberation ذلك البحث.
أرقام الصفحات على مستندات Word المصغرة
WordProcessingOptions.page_number_location يضع أرقام الصفحات على مستند Word أثناء التصيير، حتى وإن لم يحتوي المستند على أرقام مسبقًا. اختر أحد المواقع الستة من تعداد WordsPageNumberLocation الجديد؛ الافتراضي NOT_APPLY يترك المستند كما هو.
from groupdocs.viewer import Viewer
from groupdocs.viewer.options import PdfViewOptions, WordsPageNumberLocation
with Viewer("document.docx") as viewer:
options = PdfViewOptions("output.pdf")
options.word_processing_options.page_number_location = WordsPageNumberLocation.BOTTOM_CENTER
viewer.view(options)
دقة إخراج PNG و JPEG لمستندات Word
WordProcessingOptions.horizontal_resolution و vertical_resolution تحددان DPI للصور المصغرة المستخرجة من مستندات Word. الافتراضي هو 96 DPI؛ القيم خارج النطاق 72 – 600 DPI تُقيد إلى هذا النطاق.
from groupdocs.viewer import Viewer
from groupdocs.viewer.options import PngViewOptions
with Viewer("document.docx") as viewer:
options = PngViewOptions("page_{0}.png")
options.word_processing_options.horizontal_resolution = 300
options.word_processing_options.vertical_resolution = 300
viewer.view(options)
لا مزيد من libgdiplus
حزم Linux و macOS تصيغ عبر SkiaSharp و Aspose.Drawing، المدمجة داخل الحزمة wheel. لا تستدعي libgdiplus أبداً: كل مثال موثق يُنفَّذ داخل حاوية Linux لا تحتوي على libgdiplus ولا على تبعياته الرسومية. احذف libgdiplus / mono-libgdiplus من صورك وسكريبتات الإعداد.
واجهة برمجة تطبيقات Python واحدة على كل منصة
كانت حزم Linux و macOS تعرض API أصغر مقارنةً بـ Windows. الآن الإصدار 26.9 يوزع نفس API في كل مكان، لذا الكود المكتوب وفق الوثائق يعمل على جميع المنصات. حزم Linux و macOS تكتسب ProjectManagementOptions وأعضاء FileType.MPP، MPT و MPX، التي تعمل الآن هناك أيضًا.
كما تكتسب FileType.PSD، PSB، AI و ONE. هذه الصيغ لا تزال متاحة فقط على Windows، وعلى Linux و macOS سيؤدي الوصول إلى أحد هذه الأعضاء إلى رفع استثناء GroupDocsViewerException: Member 'GroupDocs.Viewer.FileType.PSD' not found. لتحديد ما إذا كان تنسيق ما يمكنه التصيير في وقت التشغيل، استخدم FileType.get_supported_file_types()، الذي يُرجع فقط ما يدعمه المحرك الحالي:
from groupdocs.viewer import FileType
supported = {file_type.extension for file_type in FileType.get_supported_file_types()}
print(".psd" in supported) # True على Windows، False على Linux و macOS
print(".mpp" in supported) # True في كل مكان
مثال على الشفرة
لتصيير ملف Microsoft Project على Linux أو macOS باستخدام وحدات زمنية يومية:
from groupdocs.viewer import Viewer
from groupdocs.viewer.options import HtmlViewOptions, TimeUnit
with Viewer("project.mpp") as viewer:
options = HtmlViewOptions.for_embedded_resources("page_{0}.html")
options.project_management_options.time_unit = TimeUnit.DAYS
viewer.view(options)
لتطبيق ترقيم الصفحات على مستند Word وتصيره إلى PDF:
from groupdocs.viewer import Viewer
from groupdocs.viewer.options import PdfViewOptions, WordsPageNumberLocation
with Viewer("document.docx") as viewer:
options = PdfViewOptions("output.pdf")
options.word_processing_options.page_number_location = WordsPageNumberLocation.BOTTOM_CENTER
viewer.view(options)
كيفية الحصول على التحديث
PyPI
قم بالترقية إلى أحدث حزمة عبر PyPI:
pip install groupdocs-viewer-net==26.9.0
التحميل المباشر
حمّل ملفات wheel لجميع المنصات من صفحة GroupDocs.Viewer for Python via .NET 26.9 .