We’re happy to announce the release of GroupDocs.Viewer for Python 26.9, available as of September 2026. This release upgrades the underlying GroupDocs.Viewer engine from 26.4 to 26.8, adds support for rendering Microsoft Project files on Linux and macOS, introduces page numbering and resolution controls for Word documents, removes the libgdiplus dependency on non‑Windows platforms, and restores compatibility with Python 3.5–3.7. The embedded .NET runtime is updated to 10.0.12, and the Python API now includes full docstrings with code examples.
Bu sürümde yenilikler
- [Feature]
WordProcessingOptions.page_number_locationveWordsPageNumberLocationenum’ını ekleyerek oluşturulan Word belgelerine sayfa numarası damgası ekleyin (VIEWERPYTHON-153) - [Feature]
WordProcessingOptions.horizontal_resolution/vertical_resolutionekleyerek Word belgeleri için PNG ve JPEG çıktısının DPI değerini ayarlayın (VIEWERPYTHON-154) - [Feature] Linux ve macOS’ta Microsoft Project dosyalarını (MPP, MPT, MPX) renderleme desteği ekleyin (VIEWERPYTHON-155)
- [Enhancement] GroupDocs.Viewer motorunu 26.4’ten 26.8’e güncelleyin (VIEWERPYTHON-156)
- [Enhancement] Gömülü .NET runtime’ı 10.0.0’dan 10.0.12’ye güncelleyin (VIEWERPYTHON-157)
- [Enhancement] Linux ve macOS’ta
libgdiplus/mono-libgdiplusgereksinimini kaldırın (VIEWERPYTHON-158) - [Enhancement] Her platformda aynı Python API’sını sunun — Linux ve macOS paketleri
ProjectManagementOptionsve Project, Photoshop, Illustrator ve OneNoteFileTypeüyelerini kazanıyor (VIEWERPYTHON-159) - [Enhancement] Python API’sına özet, parametre ve kod örnekleri içeren docstring’ler ekleyin (VIEWERPYTHON-160)
- [Enhancement] API referansına bir Geliştirici Kılavuzu bölümü ekleyin (VIEWERPYTHON-161)
- [Fix] Python 3.5 – 3.7’de paketi kullanamama sorunu (VIEWERPYTHON-162)
- [Fix] pip, Linux ve macOS sürümlerinde paketi kuruyor ancak çalıştırılamıyor (VIEWERPYTHON-163)
Public API değişiklikleri
Hiçbir şey kaldırılmadı veya yeniden adlandırılmadı.
Yeni tipler
| Tür | Modül | Açıklama |
|---|---|---|
WordsPageNumberLocation |
groupdocs.viewer.options |
Oluşturulan bir Word belgesine sayfa numarası damgası eklenme yeri: NOT_APPLY (varsayılan), TOP_LEFT, TOP_CENTER, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT |
Mevcut sınıflara yeni üyeler
| Sınıf | Üye | Açıklama |
|---|---|---|
WordProcessingOptions |
page_number_location |
Render sırasında uygulanacak sayfa numaralandırması (WordsPageNumberLocation) |
WordProcessingOptions |
horizontal_resolution |
PNG / JPEG çıktısının yatay DPI değeri, 72 – 600 (varsayılan 96) |
WordProcessingOptions |
vertical_resolution |
PNG / JPEG çıktısının dikey DPI değeri, 72 – 600 (varsayılan 96) |
Linux ve macOS’ta yeni
ProjectManagementOptions, BaseViewOptions.project_management_options ve FileType.MPP, MPT, MPX, PSD, PSB, AI, ONE zaten Windows’ta mevcuttu; şimdi Linux ve macOS paketlerinde de bulunuyor — Her platformda tek bir Python API’si bölümüne bakın.
Yeni özellikler
Linux ve macOS’ta Microsoft Project dosyaları
MPP, MPT ve MPX dosyaları yalnızca Windows’ta render edilebiliyordu; Linux ve macOS’ta Failed to detect file type hatası alınıyordu. 26.8 motoru bu dosyaları her platformda, Windows’taki aynı ProjectManagementOptions ile render ediyor:
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’ta önce Microsoft core fontlarını (ttf-mscorefonts-installer) kurun: bunlar olmadan Project render’ı Cannot find fallback font 'Generic Sans Serif' hatası verir ve Liberation gibi metrik‑uyumlu ikameler bu aramayı karşılamaz.
Oluşturulan Word belgelerinde sayfa numaraları
WordProcessingOptions.page_number_location, belge içinde sayfa numarası olmasa bile render sırasında sayfa numaraları damgalar. Yeni WordsPageNumberLocation enum’ından altı konumdan birini seçin; varsayılan NOT_APPLY belgeyi olduğu gibi bırakır.
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)
Word belgeleri için PNG ve JPEG çıktısının çözünürlüğü
WordProcessingOptions.horizontal_resolution ve vertical_resolution, Word belgelerinden render edilen görüntülerin DPI değerini ayarlar. Varsayılan 96 DPI’dir; 72 – 600 DPI aralığının dışındaki değerler bu aralığa sınırlanır.
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)
Artık libgdiplus yok
Linux ve macOS paketleri, tekerlek içinde gelen SkiaSharp ve Aspose.Drawing aracılığıyla render eder. libgdiplus‘a asla başvurmazlar: belgelenen her örnek, libgdiplus ve grafik bağımlılıkları olmayan bir Linux konteynerinde çalışır. Görüntülerinizden ve provisioning betiklerinizden libgdiplus / mono-libgdiplus‘u kaldırın.
Her platformda tek bir Python API’si
Önceden Linux ve macOS paketleri, Windows paketine göre daha küçük bir API sunuyordu. 26.9 her yerde aynı API’yi sağlıyor, böylece belgelerdeki kod her platformda aynı şekilde import edilebilir. Linux ve macOS paketleri ProjectManagementOptions ve FileType.MPP, MPT, MPX üyelerini kazanıyor; artık burada da çalışıyorlar.
Ayrıca FileType.PSD, PSB, AI ve ONE üyeleri de eklenmiştir. Bu formatlar hâlâ sadece Windows’ta mevcuttur; Linux ve macOS’ta bu üyelerden birine erişim GroupDocsViewerException: Member 'GroupDocs.Viewer.FileType.PSD' not found. hatasını verir. Çalışma zamanında bir formatın render edilip edilemeyeceğini belirlemek için FileType.get_supported_file_types() metodunu kullanın; bu metod yalnızca çalışan motorun render ettiği tipleri listeler:
from groupdocs.viewer import FileType
supported = {file_type.extension for file_type in FileType.get_supported_file_types()}
print(".psd" in supported) # Windows'ta True, Linux ve macOS'ta False
print(".mpp" in supported) # Her yerde True
Kod örneği
Linux veya macOS’ta günlük zaman birimleriyle bir Microsoft Project dosyasını render etmek:
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)
Bir Word belgesine sayfa numarası ekleyip PDF olarak render etmek:
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)
Güncellemeyi nasıl alabilirsiniz
PyPI
PyPI üzerinden en son paketi yükseltin:
pip install groupdocs-viewer-net==26.9.0
Doğrudan indirme
Tüm platformlar için tekerlek dosyalarını GroupDocs.Viewer for Python via .NET 26.9 sayfasından indirin.