Mesclar arquivos do PowerPoint em Python

Ao trabalhar com a automação do PowerPoint em Python, pode ser necessário mesclar o conteúdo de várias apresentações. Isso pode ser necessário quando uma apresentação é criada por várias pessoas em partes que precisam ser mescladas eventualmente. Para automatizar essa mesclagem, este artigo mostra como mesclar o PowerPoint PPT ou PPTX programaticamente em Python.

Biblioteca Python para mesclar PowerPoint PPT

Aspose.Slides for Python via .NET é uma poderosa biblioteca Python para criar e manipular arquivos de apresentação. Além disso, oferece maneiras flexíveis de mesclar várias apresentações PPT/PPTX. Utilizaremos esta biblioteca para mesclar apresentações neste artigo. Você pode instalá-lo de PyPI usando o seguinte comando pip.

> pip install aspose.slides

Mesclar apresentações do PowerPoint em Python

Para mesclar as apresentações PPT, você precisará clonar os slides de uma apresentação para outra. A seguir estão as etapas para mesclar dois arquivos PPT em Python.

  • Crie um objeto da classe Presentation para carregar a primeira apresentação.
  • Crie outro objeto Presentation para carregar a segunda apresentação.
  • Inicie um loop para percorrer os slides na segunda apresentação.
  • Em cada iteração, mescle o slide com a primeira apresentação usando o método Presentation.slides.addclone(ISlide).
  • Finalmente, salve a apresentação mesclada usando o método Presentation.save(String, SaveFormat).

O exemplo de código a seguir mostra como mesclar duas apresentações do PowerPoint PPTX em Python.

import aspose.slides as slides

# abra o primeiro PPT
with slides.Presentation("presentation1.pptx") as pres1:
  
    # abra o segundo PPT
    with slides.Presentation("Presentation2.pptx") as pres2:
        
        # percorrer os slides
        for slide in pres2.slides:
          
            # clonar slide
            pres1.slides.add_clone(slide)
        
        # salvar PPT mesclado
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Primeira apresentação

apresentação em powerpoint alvo

Segunda apresentação

apresentação do powerpoint de origem a ser mesclada

Apresentação mesclada

ppt powerpoint mesclado em python

Mesclar apresentações com diferentes tamanhos de slides

É possível que as apresentações que você vai mesclar usem tamanhos diferentes para seus slides. Nesses casos, é melhor sincronizar o tamanho dos slides antes de mesclar. Vamos ver como mesclar arquivos PowerPoint PPT com diferentes tamanhos de slide.

  • Crie um objeto da classe Presentation para carregar o primeiro PPT.
  • Crie outro objeto de apresentação para carregar o segundo PPT.
  • Altere o tamanho dos slides no segundo PPT usando o método Presentation.slidesize.setsize(int, int, SlideSizeScaleType).
  • Inicie um loop para percorrer os slides no segundo PPT.
  • Em cada iteração, mescle o slide com o primeiro PPT usando o método Presentation.slides.addclone(ISlide).
  • Finalmente, salve o PPT mesclado usando o método Presentation.save(String, SaveFormat).

O exemplo de código a seguir mostra como mesclar apresentações PPT com tamanhos de slide diferentes.

import aspose.slides as slides

# abra o primeiro PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # abra o segundo PPT
    with slides.Presentation("Presentation2.pptx") as pres2:
        
        # alterar o tamanho dos slides
        pres2.slide_size.set_size(pres1.slide_size.size.width, pres1.slide_size.size.height, slides.SlideSizeScaleType.ENSURE_FIT)
        
        # percorrer os slides
        for slide in pres2.slides:
          
            # clonar slide
            pres1.slides.add_clone(slide)
        
        # salvar PPT mesclado
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Mesclar slides PPT para uma seção específica em Python

Você também pode mesclar slides PPT a uma seção específica da apresentação de destino. Para isso, é usado o método Presentation.slides.addclone(ISlide, ISection). O exemplo de código a seguir mostra como mesclar slides da primeira apresentação para uma seção específica da segunda apresentação.

import aspose.slides as slides

# abra o primeiro PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # abra o segundo PPT
    with slides.Presentation("Presentation2.pptx") as pres2:

        # percorrer os slides
        for slide in pres2.slides:
          
            # clonar slide
            pres1.slides.add_clone(slide, pres1.sections[0])
        
        # salvar PPT mesclado
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Use o slide mestre ao mesclar o PowerPoint PPT

Nas seções anteriores, mesclamos os slides mantendo o design e o modelo do segundo PPT. No entanto, talvez seja necessário usar o layout da primeira apresentação (ou de destino) para os slides clonados. Nesses casos, o método sobrecarregado Presentation.slides.addclone(ISlide, Presentation.masters[int], allowclonemissinglayout = True) é usado onde o segundo parâmetro define o slide mestre.

O exemplo de código a seguir mostra como mesclar apresentações PPT usando o slide mestre desejado em Python.

import aspose.slides as slides

# abra o primeiro PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # abra o segundo PPT
    with slides.Presentation("Presentation2.pptx") as pres2:

        # percorrer os slides
        for slide in pres2.slides:
          
            # clonar slide
            pres1.slides.add_clone(slide, pres1.masters[0], allow_clone_missing_layout = True)
        
        # salvar PPT mesclado
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Apresentação mesclada

ppt powerpoint combinado em python

Obtenha uma licença gratuita

Você pode obter uma licença temporária gratuita para usar o Aspose.Slides for Python via .NET sem limitações de avaliação.

Conclusão

Neste artigo, você aprendeu como mesclar apresentações do PowerPoint PPT/PPTX em Python. Cobrimos vários cenários de mesclagem de várias apresentações do PowerPoint com a ajuda de exemplos de código. Você pode simplesmente instalar a biblioteca e usar os exemplos de código fornecidos em seus aplicativos. Caso você queira explorar mais sobre o Aspose.Slides for Python, você pode visitar a documentação. Além disso, você pode fazer suas perguntas através do nosso fórum.

Veja também

Info: Aspose free online PowerPoint Merger é uma implementação ao vivo do processo de mesclagem de apresentação como um serviço.