Siamo felici di annunciare il rilascio di GroupDocs.Viewer for Python 26.9, disponibile a partire da Settembre 2026. Questa release aggiorna il motore GroupDocs.Viewer sottostante da 26.4 a 26.8, aggiunge il supporto per il rendering dei file Microsoft Project su Linux e macOS, introduce il controllo della numerazione delle pagine e della risoluzione per i documenti Word, rimuove la dipendenza libgdiplus sulle piattaforme non Windows e ripristina la compatibilità con Python 3.5–3.7. Il runtime .NET incorporato è aggiornato a 10.0.12, e l’API Python ora include docstring complete con esempi di codice.

Novità di questa versione

  • [Feature] Aggiunge WordProcessingOptions.page_number_location e l’enumerazione WordsPageNumberLocation per inserire i numeri di pagina nei documenti Word renderizzati (VIEWERPYTHON-153)
  • [Feature] Aggiunge WordProcessingOptions.horizontal_resolution / vertical_resolution per impostare i DPI dell’output PNG e JPEG per i documenti Word (VIEWERPYTHON-154)
  • [Feature] Aggiunge il supporto al rendering dei file Microsoft Project (MPP, MPT, MPX) su Linux e macOS (VIEWERPYTHON-155)
  • [Enhancement] Aggiorna il motore GroupDocs.Viewer da 26.4 a 26.8 (VIEWERPYTHON-156)
  • [Enhancement] Aggiorna il runtime .NET incorporato da 10.0.0 a 10.0.12 (VIEWERPYTHON-157)
  • [Enhancement] Rimuove il requisito libgdiplus / mono-libgdiplus su Linux e macOS (VIEWERPYTHON-158)
  • [Enhancement] Fornisce la stessa API Python su tutte le piattaforme — i pacchetti Linux e macOS ottengono ProjectManagementOptions e i membri FileType per Project, Photoshop, Illustrator e OneNote (VIEWERPYTHON-159)
  • [Enhancement] Aggiunge docstring con riepiloghi, parametri ed esempi di codice all’API Python (VIEWERPYTHON-160)
  • [Enhancement] Aggiunge una sezione Guida per gli sviluppatori alla documentazione di riferimento dell’API (VIEWERPYTHON-161)
  • [Fix] Impossibile utilizzare il pacchetto su Python 3.5 – 3.7 (VIEWERPYTHON-162)
  • [Fix] pip installava il pacchetto su versioni Linux e macOS che non potevano eseguirlo (VIEWERPYTHON-163)

Modifiche all’API pubblica

Niente è stato rimosso o rinominato.

Nuovi tipi

Tipo Modulo Descrizione
WordsPageNumberLocation groupdocs.viewer.options Dove inserire i numeri di pagina in un documento Word renderizzato: NOT_APPLY (predefinito), TOP_LEFT, TOP_CENTER, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT

Nuovi membri su classi esistenti

Classe Membro Descrizione
WordProcessingOptions page_number_location Numerazione delle pagine da applicare durante il rendering (WordsPageNumberLocation)
WordProcessingOptions horizontal_resolution DPI orizzontale dell’output PNG / JPEG, 72 – 600 (predefinito 96)
WordProcessingOptions vertical_resolution DPI verticale dell’output PNG / JPEG, 72 – 600 (predefinito 96)

Nuovo su Linux e macOS

ProjectManagementOptions, BaseViewOptions.project_management_options e i membri FileType.MPP, MPT, MPX, PSD, PSB, AI, ONE erano già disponibili su Windows e ora sono presenti anche nei pacchetti Linux e macOS — vedi Una API Python su ogni piattaforma.

Nuove funzionalità

File Microsoft Project su Linux e macOS

I file MPP, MPT e MPX potevano essere renderizzati solo su Windows; su Linux e macOS fallivano con Failed to detect file type. Il motore 26.8 li renderizza su tutte le piattaforme, con le stesse ProjectManagementOptions di 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)

Su Linux, installare prima i Microsoft core fonts (ttf-mscorefonts-installer): senza di essi il rendering del progetto fallisce con Cannot find fallback font 'Generic Sans Serif', e i sostituti metricamente compatibili come Liberation non soddisfano tale ricerca.

Numeri di pagina sui documenti Word renderizzati

WordProcessingOptions.page_number_location inserisce i numeri di pagina in un documento Word durante il rendering, anche se il documento originale non ne contiene. Scegli una delle sei posizioni dell’enumerazione WordsPageNumberLocation; il valore predefinito, NOT_APPLY, lascia il documento invariato.

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)

Risoluzione dell’output PNG e JPEG per i documenti Word

WordProcessingOptions.horizontal_resolution e vertical_resolution impostano i DPI delle immagini generate dai documenti Word. Il valore predefinito è 96 DPI; i valori al di fuori dell’intervallo 72 – 600 DPI vengono limitati a tale intervallo.

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)

Addio a libgdiplus

I pacchetti Linux e macOS renderizzano tramite SkiaSharp e Aspose.Drawing, che sono inclusi all’interno del wheel. Non chiamano mai libgdiplus: tutti gli esempi documentati funzionano in un container Linux che non contiene né libgdiplus né le sue dipendenze grafiche. Rimuovi libgdiplus / mono-libgdiplus dalle tue immagini e dagli script di provisioning.

Un’API Python su ogni piattaforma

In precedenza i pacchetti Linux e macOS esponevano un’API più ridotta rispetto a quella Windows. La versione 26.9 fornisce la stessa API ovunque, così il codice scritto secondo la documentazione funziona su tutte le piattaforme. I pacchetti Linux e macOS ottengono ProjectManagementOptions e i membri FileType.MPP, MPT e MPX, che ora funzionano anche lì.

Ottengono inoltre FileType.PSD, PSB, AI e ONE. Questi formati rimangono esclusivi per Windows; su Linux e macOS l’accesso a uno di questi membri genera GroupDocsViewerException: Member 'GroupDocs.Viewer.FileType.PSD' not found. Per decidere a runtime se un formato può essere renderizzato, verifica FileType.get_supported_file_types(), che elenca solo i formati supportati dal motore in esecuzione:

from groupdocs.viewer import FileType

supported = {file_type.extension for file_type in FileType.get_supported_file_types()}
print(".psd" in supported)   # True su Windows, False su Linux e macOS
print(".mpp" in supported)   # True ovunque

Esempio di codice

Per renderizzare un file Microsoft Project su Linux o macOS con unità di tempo giornaliere:

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)

Per applicare la numerazione delle pagine a un documento Word e renderizzarlo in 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)

Come ottenere l’aggiornamento

PyPI

Aggiorna al pacchetto più recente tramite PyPI:

pip install groupdocs-viewer-net==26.9.0

Download diretto

Scarica i file wheel per tutte le piattaforme dalla pagina GroupDocs.Viewer for Python via .NET 26.9.

Risorse