Jesteśmy szczęśliwi, mogąc ogłosić wydanie GroupDocs.Viewer for Python 26.9, dostępne od września 2026. To wydanie aktualizuje silnik GroupDocs.Viewer z wersji 26.4 do 26.8, dodaje obsługę renderowania plików Microsoft Project na systemach Linux i macOS, wprowadza kontrolę numeracji stron i rozdzielczości dla dokumentów Word, usuwa zależność libgdiplus na platformach nie‑Windows oraz przywraca kompatybilność z Python 3.5‑3.7. Wbudowane środowisko .NET zostało zaktualizowane do wersji 10.0.12, a API Pythona zawiera teraz pełne docstringi z przykładami kodu.
Co nowego w tej wersji
- [Feature] Dodano
WordProcessingOptions.page_number_locationoraz wyliczenieWordsPageNumberLocationumożliwiające nanoszenie numerów stron na renderowanych dokumentach Word (VIEWERPYTHON-153) - [Feature] Dodano
WordProcessingOptions.horizontal_resolution/vertical_resolutionumożliwiające ustawienie DPI wyjścia PNG i JPEG dla dokumentów Word (VIEWERPYTHON-154) - [Feature] Dodano obsługę renderowania plików Microsoft Project (MPP, MPT, MPX) na Linux i macOS (VIEWERPYTHON-155)
- [Enhancement] Zaktualizowano silnik GroupDocs.Viewer z wersji 26.4 do 26.8 (VIEWERPYTHON-156)
- [Enhancement] Zaktualizowano wbudowane środowisko .NET z wersji 10.0.0 do 10.0.12 (VIEWERPYTHON-157)
- [Enhancement] Usunięto wymóg
libgdiplus/mono-libgdiplusna Linux i macOS (VIEWERPYTHON-158) - [Enhancement] Udostępniono to samo API Pythona na wszystkich platformach — pakiety Linux i macOS zyskują
ProjectManagementOptionsoraz członkówFileTypedla Project, Photoshop, Illustrator i OneNote (VIEWERPYTHON-159) - [Enhancement] Dodano docstringi z podsumowaniami, parametrami i przykładami kodu do API Pythona (VIEWERPYTHON-160)
- [Enhancement] Dodano sekcję „Developer Guide” do referencji API (VIEWERPYTHON-161)
- [Fix] Naprawiono problem z używaniem pakietu w Python 3.5‑3.7 (VIEWERPYTHON-162)
- [Fix] Naprawiono instalację pakietu przez pip na wersjach Linux i macOS, które nie mogą go uruchomić (VIEWERPYTHON-163)
Zmiany w publicznym API
Nic nie zostało usunięte ani przemianowane.
Nowe typy
| Typ | Moduł | Opis |
|---|---|---|
WordsPageNumberLocation |
groupdocs.viewer.options |
Miejsce nanoszenia numerów stron w renderowanym dokumencie Word: NOT_APPLY (domyślnie), TOP_LEFT, TOP_CENTER, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT |
Nowi członkowie istniejących klas
| Klasa | Członek | Opis |
|---|---|---|
WordProcessingOptions |
page_number_location |
Numeracja stron stosowana podczas renderowania (WordsPageNumberLocation) |
WordProcessingOptions |
horizontal_resolution |
Poziome DPI wyjścia PNG / JPEG, 72 – 600 (domyślnie 96) |
WordProcessingOptions |
vertical_resolution |
Pionowe DPI wyjścia PNG / JPEG, 72 – 600 (domyślnie 96) |
Nowości w systemach Linux i macOS
ProjectManagementOptions, BaseViewOptions.project_management_options oraz FileType.MPP, MPT, MPX, PSD, PSB, AI, ONE były już dostępne w wersji Windows i teraz są również w pakietach Linux i macOS — zobacz Jedno API Pythona na każdej platformie.
Nowe funkcje
Pliki Microsoft Project na Linux i macOS
Pliki MPP, MPT i MPX były renderowane wyłącznie w Windows; na Linux i macOS kończyło się to błędem Failed to detect file type. Silnik 26.8 renderuje je na każdej platformie, używając tych samych ProjectManagementOptions, co w 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)
Na Linux najpierw zainstaluj czcionki Microsoft (ttf-mscorefonts-installer): bez nich renderowanie projektu kończy się błędem Cannot find fallback font 'Generic Sans Serif', a zamienniki zgodne metrycznie, takie jak Liberation, nie spełniają tego wymogu.
Numery stron w renderowanych dokumentach Word
WordProcessingOptions.page_number_location nanoszy numery stron na dokument Word w trakcie renderowania, nawet jeśli dokument ich nie zawiera. Wybierz jedną z sześciu pozycji z nowego wyliczenia WordsPageNumberLocation; domyślnie NOT_APPLY pozostawia dokument bez zmian.
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)
Rozdzielczość wyjścia PNG i JPEG dla dokumentów Word
WordProcessingOptions.horizontal_resolution i vertical_resolution ustalają DPI obrazów renderowanych z dokumentów Word. Domyślnie jest to 96 DPI; wartości spoza zakresu 72 – 600 DPI są ograniczane do tego przedziału.
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)
Koniec z libgdiplus
Pakiety Linux i macOS renderują przy użyciu SkiaSharp i Aspose.Drawing, które są wbudowane w koło (wheel). Nigdy nie wywołują libgdiplus: każdy udokumentowany przykład działa w kontenerze Linux, który nie posiada ani libgdiplus, ani jego zależności graficznych. Usuń libgdiplus / mono-libgdiplus ze swoich obrazów i skryptów provisioningowych.
Jedno API Pythona na każdej platformie
Wcześniej pakiety Linux i macOS udostępniały mniejsze API niż wersja Windows. W wersji 26.9 to samo API jest dostępne wszędzie, więc kod napisany zgodnie z dokumentacją działa na każdej platformie. Pakiety Linux i macOS zyskują ProjectManagementOptions oraz członków FileType.MPP, MPT i MPX, które teraz działają również tam.
Zyskują także FileType.PSD, PSB, AI i ONE. Te formaty pozostają dostępne tylko w Windows; na Linux i macOS odwołanie do jednego z nich powoduje błąd GroupDocsViewerException: Member 'GroupDocs.Viewer.FileType.PSD' not found. Aby w czasie wykonywania sprawdzić, czy dany format może być renderowany, użyj FileType.get_supported_file_types(), które zwraca jedynie formaty obsługiwane przez aktualnie uruchomiony silnik:
from groupdocs.viewer import FileType
supported = {file_type.extension for file_type in FileType.get_supported_file_types()}
print(".psd" in supported) # True w Windows, False w Linux i macOS
print(".mpp" in supported) # True wszędzie
Przykład kodu
Renderowanie pliku Microsoft Project na Linux lub macOS z jednostkami czasu w dniach:
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)
Nanoszenie numeracji stron do dokumentu Word i renderowanie do 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)
Jak uzyskać aktualizację
PyPI
Uaktualnij do najnowszej wersji pakietu za pomocą PyPI:
pip install groupdocs-viewer-net==26.9.0
Bezpośrednie pobranie
Pobierz pliki wheel dla wszystkich platform ze strony GroupDocs.Viewer for Python via .NET 26.9 .