Kami senang mengumumkan rilis GroupDocs.Viewer for Python 26.9, tersedia sejak September 2026. Rilis ini meningkatkan mesin GroupDocs.Viewer yang mendasarinya dari 26.4 ke 26.8, menambahkan dukungan untuk merender file Microsoft Project pada Linux dan macOS, memperkenalkan kontrol penomoran halaman dan resolusi untuk dokumen Word, menghapus ketergantungan libgdiplus pada platform non‑Windows, dan mengembalikan kompatibilitas dengan Python 3.5–3.7. Runtime .NET yang disematkan diperbarui ke 10.0.12, dan API Python kini menyertakan docstring lengkap dengan contoh kode.
Apa yang baru di rilis ini
- [Feature] Tambahkan
WordProcessingOptions.page_number_locationdan enumWordsPageNumberLocationuntuk menempelkan nomor halaman pada dokumen Word yang dirender (VIEWERPYTHON-153) - [Feature] Tambahkan
WordProcessingOptions.horizontal_resolution/vertical_resolutionuntuk mengatur DPI output PNG dan JPEG bagi dokumen Word (VIEWERPYTHON-154) - [Feature] Tambahkan dukungan untuk merender file Microsoft Project (MPP, MPT, MPX) pada Linux dan macOS (VIEWERPYTHON-155)
- [Enhancement] Perbarui mesin GroupDocs.Viewer dari 26.4 ke 26.8 (VIEWERPYTHON-156)
- [Enhancement] Perbarui runtime .NET yang disematkan dari 10.0.0 ke 10.0.12 (VIEWERPYTHON-157)
- [Enhancement] Hapus persyaratan
libgdiplus/mono-libgdipluspada Linux dan macOS (VIEWERPYTHON-158) - [Enhancement] Distribusikan API Python yang sama pada setiap platform — paket Linux dan macOS kini memiliki
ProjectManagementOptionsserta anggotaFileTypeuntuk Project, Photoshop, Illustrator, dan OneNote (VIEWERPYTHON-159) - [Enhancement] Tambahkan docstring dengan ringkasan, parameter, dan contoh kode ke API Python (VIEWERPYTHON-160)
- [Enhancement] Tambahkan bagian Panduan Pengembang ke referensi API (VIEWERPYTHON-161)
- [Fix] Tidak dapat menggunakan paket pada Python 3.5 – 3.7 (VIEWERPYTHON-162)
- [Fix] pip menginstal paket pada versi Linux dan macOS yang tidak dapat menjalankannya (VIEWERPYTHON-163)
Perubahan API Publik
Tidak ada yang dihapus atau diubah namanya.
Tipe baru
| Tipe | Modul | Deskripsi |
|---|---|---|
WordsPageNumberLocation |
groupdocs.viewer.options |
Lokasi penempelan nomor halaman pada dokumen Word yang dirender: NOT_APPLY (default), TOP_LEFT, TOP_CENTER, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT |
Anggota baru pada kelas yang ada
| Kelas | Anggota | Deskripsi |
|---|---|---|
WordProcessingOptions |
page_number_location |
Penomoran halaman yang diterapkan saat merender (WordsPageNumberLocation) |
WordProcessingOptions |
horizontal_resolution |
DPI horizontal output PNG / JPEG, 72 – 600 (default 96) |
WordProcessingOptions |
vertical_resolution |
DPI vertikal output PNG / JPEG, 72 – 600 (default 96) |
Baru pada Linux dan macOS
ProjectManagementOptions, BaseViewOptions.project_management_options serta FileType.MPP, MPT, MPX, PSD, PSB, AI, ONE sudah tersedia pada Windows dan kini juga ada pada paket Linux dan macOS — lihat Satu API Python pada setiap platform.
Fitur baru
File Microsoft Project pada Linux dan macOS
File MPP, MPT, dan MPX sebelumnya hanya dapat dirender pada Windows; pada Linux dan macOS mereka gagal dengan Failed to detect file type. Mesin 26.8 merendernya pada semua platform, dengan ProjectManagementOptions yang sama seperti pada 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)
Pada Linux, instal dulu font inti Microsoft (ttf-mscorefonts-installer): tanpa font tersebut rendering Project gagal dengan Cannot find fallback font 'Generic Sans Serif', dan pengganti yang kompatibel metrik seperti Liberation tidak memenuhi pencarian itu.
Nomor halaman pada dokumen Word yang dirender
WordProcessingOptions.page_number_location menempelkan nomor halaman pada dokumen Word saat dirender, bahkan jika dokumen asli tidak memiliki nomor. Pilih satu dari enam posisi yang tersedia pada enum WordsPageNumberLocation; nilai default NOT_APPLY membiarkan dokumen tetap apa adanya.
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)
Resolusi output PNG dan JPEG untuk dokumen Word
WordProcessingOptions.horizontal_resolution dan vertical_resolution mengatur DPI gambar yang dihasilkan dari dokumen Word. Nilai default adalah 96 DPI; nilai di luar rentang 72 – 600 DPI akan dipotong ke dalam rentang tersebut.
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)
Tidak ada lagi libgdiplus
Paket Linux dan macOS merender melalui SkiaSharp dan Aspose.Drawing, yang disertakan di dalam wheel. Mereka tidak pernah memanggil libgdiplus: setiap contoh yang didokumentasikan dijalankan dalam kontainer Linux yang tidak memiliki libgdiplus maupun dependensi grafisnya. Hapus libgdiplus / mono-libgdiplus dari image dan skrip provisioning Anda.
Satu API Python pada setiap platform
Sebelumnya paket Linux dan macOS menyediakan API yang lebih kecil dibandingkan Windows. Versi 26.9 menyediakan API yang sama di semua platform, sehingga kode yang ditulis berdasarkan dokumentasi dapat di‑import di mana saja. Paket Linux dan macOS kini memiliki ProjectManagementOptions serta anggota FileType.MPP, MPT, dan MPX, yang kini berfungsi di sana juga.
Mereka juga menambahkan FileType.PSD, PSB, AI, dan ONE. Format‑format tersebut tetap hanya tersedia di Windows; pada Linux dan macOS mengakses salah satu anggota ini akan menghasilkan GroupDocsViewerException: Member 'GroupDocs.Viewer.FileType.PSD' not found. Untuk menentukan pada runtime apakah sebuah format dapat dirender, periksa FileType.get_supported_file_types(), yang hanya menampilkan format yang didukung oleh engine yang sedang berjalan:
from groupdocs.viewer import FileType
supported = {file_type.extension for file_type in FileType.get_supported_file_types()}
print(".psd" in supported) # True di Windows, False di Linux dan macOS
print(".mpp" in supported) # True di semua platform
Contoh kode
Untuk merender file Microsoft Project pada Linux atau macOS dengan satuan waktu harian:
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)
Untuk menerapkan penomoran halaman pada dokumen Word dan merender ke 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)
Cara mendapatkan pembaruan
PyPI
Tingkatkan ke paket terbaru melalui PyPI:
pip install groupdocs-viewer-net==26.9.0
Unduhan langsung
Unduh file wheel untuk semua platform dari halaman GroupDocs.Viewer for Python via .NET 26.9 .