Estamos felizes em anunciar o lançamento do GroupDocs.Viewer for Python 26.9, disponível a partir de setembro de 2026. Esta versão atualiza o mecanismo subjacente do GroupDocs.Viewer de 26.4 para 26.8, adiciona suporte à renderização de arquivos Microsoft Project em Linux e macOS, introduz controle de numeração de páginas e resolução para documentos Word, remove a dependência libgdiplus em plataformas não‑Windows e restaura a compatibilidade com Python 3.5–3.7. O runtime .NET incorporado foi atualizado para 10.0.12, e a API Python agora inclui docstrings completas com exemplos de código.
O que há de novo nesta versão
- [Feature] Adicionar
WordProcessingOptions.page_number_locatione o enumWordsPageNumberLocationpara inserir numeração de páginas em documentos Word renderizados (VIEWERPYTHON-153) - [Feature] Adicionar
WordProcessingOptions.horizontal_resolution/vertical_resolutionpara definir o DPI da saída PNG e JPEG de documentos Word (VIEWERPYTHON-154) - [Feature] Adicionar suporte à renderização de arquivos Microsoft Project (MPP, MPT, MPX) em Linux e macOS (VIEWERPYTHON-155)
- [Enhancement] Atualizar o mecanismo GroupDocs.Viewer de 26.4 para 26.8 (VIEWERPYTHON-156)
- [Enhancement] Atualizar o runtime .NET incorporado de 10.0.0 para 10.0.12 (VIEWERPYTHON-157)
- [Enhancement] Remover a exigência
libgdiplus/mono-libgdiplusem Linux e macOS (VIEWERPYTHON-158) - [Enhancement] Disponibilizar a mesma API Python em todas as plataformas — os pacotes Linux e macOS ganham
ProjectManagementOptionse os membrosFileTypeProject, Photoshop, Illustrator e OneNote (VIEWERPYTHON-159) - [Enhancement] Adicionar docstrings com resumos, parâmetros e exemplos de código à API Python (VIEWERPYTHON-160)
- [Enhancement] Incluir uma seção Guia do Desenvolvedor na referência da API (VIEWERPYTHON-161)
- [Fix] Corrigir impossibilidade de usar o pacote em Python 3.5 – 3.7 (VIEWERPYTHON-162)
- [Fix] Corrigir instalação via pip em versões Linux e macOS que não conseguem executar o pacote (VIEWERPYTHON-163)
Mudanças na API pública
Nada foi removido ou renomeado.
Novos tipos
| Tipo | Módulo | Descrição |
|---|---|---|
WordsPageNumberLocation |
groupdocs.viewer.options |
Onde inserir a numeração de páginas em um documento Word renderizado: NOT_APPLY (padrão), TOP_LEFT, TOP_CENTER, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT |
Novos membros em classes existentes
| Classe | Membro | Descrição |
|---|---|---|
WordProcessingOptions |
page_number_location |
Numeração de página a ser aplicada durante a renderização (WordsPageNumberLocation) |
WordProcessingOptions |
horizontal_resolution |
DPI horizontal da saída PNG / JPEG, 72 – 600 (padrão 96) |
WordProcessingOptions |
vertical_resolution |
DPI vertical da saída PNG / JPEG, 72 – 600 (padrão 96) |
Novidades em Linux e macOS
ProjectManagementOptions, BaseViewOptions.project_management_options e FileType.MPP, MPT, MPX, PSD, PSB, AI, ONE já estavam disponíveis no Windows e agora também estão nos pacotes Linux e macOS — veja Uma API Python em todas as plataformas.
Novos recursos
Arquivos Microsoft Project em Linux e macOS
Arquivos MPP, MPT e MPX eram renderizados apenas no Windows; em Linux e macOS eles falhavam com Failed to detect file type. O mecanismo 26.8 os renderiza em todas as plataformas, usando o mesmo ProjectManagementOptions do 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)
Em Linux, instale primeiro as fontes Microsoft core (ttf-mscorefonts-installer): sem elas a renderização de projetos falha com Cannot find fallback font 'Generic Sans Serif', e substitutos compatíveis como Liberation não atendem à busca.
Numeração de páginas em documentos Word renderizados
WordProcessingOptions.page_number_location insere números de página em um documento Word durante a renderização, mesmo que o documento original não os contenha. Escolha uma das seis posições do novo enum WordsPageNumberLocation; o padrão, NOT_APPLY, deixa o documento inalterado.
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)
Resolução da saída PNG e JPEG para documentos Word
WordProcessingOptions.horizontal_resolution e vertical_resolution definem o DPI das imagens geradas a partir de documentos Word. O padrão é 96 DPI; valores fora do intervalo 72 – 600 DPI são ajustados para esse intervalo.
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)
Adeus libgdiplus
Os pacotes Linux e macOS renderizam através do SkiaSharp e do Aspose.Drawing, que são incluídos dentro da wheel. Eles nunca chamam libgdiplus: todos os exemplos documentados são executados em contêineres Linux que não possuem libgdiplus nem suas dependências gráficas. Remova libgdiplus / mono-libgdiplus de suas imagens e scripts de provisionamento.
Uma API Python em todas as plataformas
Versões anteriores dos pacotes Linux e macOS expunham uma API menor que a do Windows. O 26.9 entrega a mesma API em todos os ambientes, de modo que o código escrito conforme a documentação funciona em qualquer plataforma. Os pacotes Linux e macOS ganham ProjectManagementOptions e os membros FileType.MPP, MPT e MPX, que agora também funcionam lá.
Eles também ganham FileType.PSD, PSB, AI e ONE. Esses formatos permanecem exclusivos do Windows e, em Linux e macOS, acessar um desses membros gera GroupDocsViewerException: Member 'GroupDocs.Viewer.FileType.PSD' not found. Para decidir em tempo de execução se um formato pode ser renderizado, verifique FileType.get_supported_file_types(), que lista apenas os tipos suportados pelo mecanismo em execução:
from groupdocs.viewer import FileType
supported = {file_type.extension for file_type in FileType.get_supported_file_types()}
print(".psd" in supported) # True no Windows, False em Linux e macOS
print(".mpp" in supported) # True em todos os lugares
Exemplo de código
Para renderizar um arquivo Microsoft Project em Linux ou macOS com unidades de tempo diárias:
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)
Para aplicar numeração de páginas a um documento Word e renderizar para 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)
Como obter a atualização
PyPI
Atualize para o pacote mais recente via PyPI:
pip install groupdocs-viewer-net==26.9.0
Download direto
Baixe os arquivos wheel para todas as plataformas na página GroupDocs.Viewer for Python via .NET 26.9.