Sloučit soubory PowerPoint v Pythonu

Při práci s automatizací PowerPointu v Pythonu možná budete muset sloučit obsah více prezentací. To může být vyžadováno, když prezentaci vytváří více lidí v částech, které je třeba nakonec sloučit. Chcete-li toto sloučení automatizovat, tento článek ukazuje, jak programově sloučit PowerPoint PPT nebo PPTX v Pythonu.

Knihovna Pythonu pro sloučení PowerPoint PPTX

Aspose.Slides pro Python přes .NET je výkonná knihovna Pythonu pro vytváření a manipulaci s prezentačními soubory. Navíc poskytuje flexibilní způsoby sloučení více PPT/PPTX prezentací. Tuto knihovnu použijeme ke sloučení prezentací v tomto článku. Můžete jej nainstalovat z PyPI pomocí následujícího příkazu pip.

> pip install aspose.slides

Sloučit PowerPoint PPT v Pythonu

Chcete-li sloučit prezentace PPT, budete muset naklonovat snímky z jedné prezentace do druhé. Následují kroky ke sloučení dvou souborů PPT v Pythonu.

  • Vytvořte objekt třídy Presentation pro načtení první prezentace.
  • Chcete-li načíst druhou prezentaci, vytvořte další objekt prezentace.
  • Spusťte smyčku pro iteraci snímků ve druhé prezentaci.
  • V každé iteraci sloučte snímek s první prezentací pomocí metody Presentation.slides.addclone(ISlide).
  • Nakonec uložte sloučenou prezentaci pomocí metody Presentation.save(String, SaveFormat).

Následující ukázka kódu ukazuje, jak sloučit dvě prezentace PowerPoint PPTX v Pythonu.

import aspose.slides as slides

# otevřít první PPT
with slides.Presentation("presentation1.pptx") as pres1:
  
    # otevřít druhý PPT
    with slides.Presentation("Presentation2.pptx") as pres2:
        
        # procházet diapozitivy
       for slide in pres2.slides:
          
            # klonovací snímek
            pres1.slides.add_clone(slide)
        
        # uložit sloučený PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

První prezentace

cílová powerpointová prezentace

Druhá prezentace

zdrojová powerpointová prezentace, která má být sloučena

Sloučené PPT

sloučený powerpoint ppt v pythonu

Python: Sloučit PPT prezentace s různými velikostmi snímků

Je možné, že prezentace, které se chystáte sloučit, používají různé velikosti snímků. V takových případech je lepší synchronizovat velikost snímků před sloučením. Podívejme se, jak sloučit soubory PowerPoint PPT s různými velikostmi snímků.

  • Vytvořte objekt třídy Presentation pro načtení prvního PPT.
  • Vytvořte další objekt prezentace pro načtení druhého PPT.
  • Změňte velikost snímků ve druhém PPT pomocí metody Presentation.slidesize.setsize(int, int, SlideSizeScaleType).
  • Spusťte smyčku pro iteraci snímků ve druhém PPT.
  • V každé iteraci sloučte snímek s prvním PPT pomocí metody Presentation.slides.addclone(ISlide).
  • Nakonec uložte sloučený PPT pomocí metody Presentation.save(String, SaveFormat).

Následující ukázka kódu ukazuje, jak sloučit prezentace PPT s různými velikostmi snímků.

import aspose.slides as slides

# otevřít první PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # otevřít druhý PPT
    with slides.Presentation("Presentation2.pptx") as pres2:
        
        # změnit velikost snímků
        pres2.slide_size.set_size(pres1.slide_size.size.width, pres1.slide_size.size.height, slides.SlideSizeScaleType.ENSURE_FIT)
        
        # procházet diapozitivy
       for slide in pres2.slides:
          
            # klonovací snímek
            pres1.slides.add_clone(slide)
        
        # uložit sloučený PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Sloučit snímky PPT do konkrétní sekce v Pythonu

Snímky PPT můžete také sloučit do určité části cílové prezentace. K tomu se používá metoda Presentation.slides.addclone(ISlide, ISsection). Následující ukázka kódu ukazuje, jak sloučit snímky z první prezentace do určité části druhé prezentace.

import aspose.slides as slides

# otevřít první PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # otevřít druhý PPT
    with slides.Presentation("Presentation2.pptx") as pres2:

        # procházet diapozitivy
       for slide in pres2.slides:
          
            # klonovací snímek
            pres1.slides.add_clone(slide, pres1.sections[0])
        
        # uložit sloučený PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Při slučování PowerPoint PPT použijte předlohu snímků

V předchozích částech jsme sloučili snímky a zachovali design a šablonu druhého PPT. Možná však budeme muset použít rozvržení první (nebo cílové) prezentace pro klonované snímky. V takových případech se používá přetížená metoda Presentation.slides.addclone(ISlide, Presentation.masters[int], allowclonemissinglayout = True), kde druhý parametr definuje předlohu snímků.

Následující ukázka kódu ukazuje, jak sloučit prezentace PPT pomocí požadované předlohy snímků v Pythonu.

import aspose.slides as slides

# otevřít první PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # otevřít druhý PPT
    with slides.Presentation("Presentation2.pptx") as pres2:

        # procházet diapozitivy
       for slide in pres2.slides:
          
            # klonovací snímek
            pres1.slides.add_clone(slide, pres1.masters[0], allow_clone_missing_layout = True)
        
        # uložit sloučený PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Sloučená prezentace

kombinovaný powerpoint ppt v pythonu

Knihovna Python ke sloučení PowerPoint PPT – Získejte bezplatnou licenci

Můžete získat bezplatnou dočasnou licenci ke sloučení prezentací PowerPoint v Pythonu bez omezení hodnocení.

Závěr

V tomto článku jste se naučili, jak sloučit prezentace PowerPoint PPT nebo PPTX v Pythonu. Pokryli jsme různé scénáře sloučení více prezentací PowerPoint pomocí ukázek kódu. Můžete jednoduše nainstalovat knihovnu a použít poskytnuté ukázky kódu ve svých aplikacích. V případě, že chcete prozkoumat více o Aspose.Slides pro Python, můžete navštívit dokumentaci. Také můžete klást své dotazy prostřednictvím našeho fóra.

Viz také

Info: Aspose free online PowerPoint Merger je živá implementace procesu slučování prezentace jako služby.