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_location ve WordsPageNumberLocation enum’ını ekleyerek oluşturulan Word belgelerine sayfa numarası damgası ekleyin (VIEWERPYTHON-153)
  • [Feature] WordProcessingOptions.horizontal_resolution / vertical_resolution ekleyerek 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-libgdiplus gereksinimini kaldırın (VIEWERPYTHON-158)
  • [Enhancement] Her platformda aynı Python API’sını sunun — Linux ve macOS paketleri ProjectManagementOptions ve Project, Photoshop, Illustrator ve OneNote FileType ü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.

Kaynaklar