Perguntas Frequentes

Perguntas Frequentes

Perguntas Frequentes

Como instalo o Aspose.Slides FOSS?

Instale a partir do PyPI usando pip. Python 3.10 ou posterior é necessário.

pip install aspose-slides-foss

Verifique a instalação:

import aspose.slides_foss as slides
with slides.Presentation() as prs:
    print(f"Slides: {len(prs.slides)}")

A dependência lxml é instalada automaticamente. Nenhum Microsoft Office ou outro runtime do sistema é necessário.


Por que devo usar with slides.Presentation() as prs:?

A classe Presentation gerencia manipuladores de arquivos internos e recursos XML. Sem o gerenciador de contexto, esses recursos não são liberados quando o objeto Presentation sai do escopo, o que pode causar vazamentos de recursos ou bloqueios de arquivos no Windows.

Sempre siga este padrão:

with slides.Presentation("input.pptx") as prs:
    # work here
    prs.save("output.pptx", SaveFormat.PPTX)

Em quais formatos de arquivo posso salvar?

Apenas PPTX é suportado:

from aspose.slides_foss.export import SaveFormat
prs.save("output.pptx", SaveFormat.PPTX)

Exportar para PDF, HTML, SVG ou formatos de imagem (PNG, JPEG) não está disponível nesta edição.


Posso abrir arquivos .ppt (PowerPoint antigo 97–2003)?

Não. Apenas arquivos .pptx (Office Open XML) são suportados. O formato binário legado .ppt não é tratado por esta biblioteca.


Como acesso os slides?

Os slides são uma lista indexada a partir de zero acessível via prs.slides:

first_slide = prs.slides[0]
slide_count = len(prs.slides)

Como adiciono um segundo slide?

Use prs.slides.add_empty_slide() com um layout:

with slides.Presentation() as prs:
    layout = prs.layout_slides[0]
    prs.slides.add_empty_slide(layout)
    slide2 = prs.slides[1]
    prs.save("two-slides.pptx", SaveFormat.PPTX)

Como defino a cor de fundo do slide?

A coloração de fundo do slide não está disponível nesta edição. A classe Slide não expõe uma propriedade background. Tentar slide.background gerará AttributeError. Este recurso não está implementado na versão atual.


Como uso NullableBool?

NullableBool é um enum de três estados usado para propriedades de formatação. Use NullableBool.TRUE (não o True do Python) para negrito, itálico e propriedades semelhantes:

from aspose.slides_foss import NullableBool, TextUnderlineType
fmt.font_bold = NullableBool.TRUE
fmt.font_italic = NullableBool.FALSE
# font_underline is TextUnderlineType, not NullableBool:
fmt.font_underline = TextUnderlineType.NOT_DEFINED  # inherits from theme

Por que definir a cor do texto não tem efeito?

Você também deve definir fill_type = FillType.SOLID antes de atribuir a cor:

from aspose.slides_foss import FillType
from aspose.slides_foss.drawing import Color

fmt.fill_format.fill_type = FillType.SOLID
fmt.fill_format.solid_fill_color.color = Color.from_argb(255, 200, 0, 0)

Posso usar gráficos ou SmartArt?

Não. Gráficos, SmartArt, objetos OLE, animações, transições, hyperlinks, macros VBA e assinaturas digitais não são implementados nesta edição e geram NotImplementedError.


A biblioteca suporta Python 3.9?

Não. É necessário Python 3.10 ou posterior.


Esta biblioteca é thread‑safe?

Cada objeto Presentation é independente. Criar e usar instâncias separadas de Presentation a partir de threads distintas é seguro, desde que você não compartilhe um único objeto Presentation entre threads sem bloqueio externo.


Como incorporo uma imagem?

Leia os bytes da imagem e adicione‑os a prs.images, então crie um PictureFrame:

with open("logo.png", "rb") as f:
    image_data = f.read()
image = prs.images.add_image(image_data)
slide.shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 50, 50, 200, 150, image)

Veja Também

 Português