Převod prezentací PowerPoint do dokumentů Word v Pythonu

Přehled

Tento článek poskytuje vývojářům řešení pro převod prezentací PowerPoint a OpenDocument do dokumentů Word pomocí Aspose.Slides for Python via .NET a Aspose.Words for Python via .NET. Postupný průvodce vás provede každým krokem konverzního procesu.

Převod prezentace do dokumentu Word

Postupujte podle níže uvedených pokynů pro převod prezentace PowerPoint nebo OpenDocument do dokumentu Word:

  1. Vytvořte instanci třídy Presentation a načtěte soubor prezentace.
  2. Vytvořte instanci tříd Document a DocumentBuilder pro vytvoření dokumentu Word.
  3. Nastavte velikost stránky dokumentu Word tak, aby odpovídala prezentaci, pomocí vlastnosti DocumentBuilder.page_setup.
  4. Nastavte okraje v dokumentu Word pomocí vlastnosti DocumentBuilder.page_setup.
  5. Projděte všechny snímky prezentace pomocí vlastnosti Presentation.slides.
    • Vygenerujte obrázek snímku pomocí metody get_image ze třídy Slide a uložte jej do paměťového proudu.
    • Přidejte obrázek snímku do dokumentu Word pomocí metody insert_image ze třídy DocumentBuilder.
  6. Uložte dokument Word do souboru.

Řekněme, že máme prezentaci „sample.pptx“, která vypadá takto:

Prezentace PowerPoint

Následující ukázka kódu v Pythonu demonstruje, jak převést prezentaci PowerPoint do dokumentu Word:

import aspose.slides as slides
import aspose.words as words

# Načtěte soubor prezentace.
with slides.Presentation("sample.pptx") as presentation:

    # Vytvořte objekty Document a DocumentBuilder.
    document = words.Document()
    builder = words.DocumentBuilder(document)

    # Nastavte velikost stránky v dokumentu Word.
    slide_size = presentation.slide_size.size
    builder.page_setup.page_width = slide_size.width
    builder.page_setup.page_height = slide_size.height

    # Nastavte okraje v dokumentu Word.
    builder.page_setup.left_margin = 0
    builder.page_setup.right_margin = 0
    builder.page_setup.top_margin = 0
    builder.page_setup.bottom_margin = 0

    scale_x = 2
    scale_y = 2

    # Projděte všechny snímky prezentace.
    for slide in presentation.slides:

        # Vygenerujte obrázek snímku a uložte jej do paměťového proudu.
        with slide.get_image(scale_x, scale_y) as image:
            image_stream = BytesIO()
            image.save(image_stream, slides.ImageFormat.PNG)

        # Přidejte obrázek snímku do dokumentu Word.
        image_stream.seek(0)
        image_width = builder.page_setup.page_width
        image_height = builder.page_setup.page_height
        builder.insert_image(image_stream.read(), image_width, image_height)

        builder.insert_break(words.BreakType.PAGE_BREAK)

    # Uložte dokument Word do souboru.
    document.save("output.docx")

Výsledek:

Dokument Word

Často kladené otázky

Jaké komponenty je třeba nainstalovat pro převod prezentací PowerPoint a OpenDocument do dokumentů Word?

Stačí přidat příslušné balíčky Aspose.Slides for Python via .NET a Aspose.Words for Python .NET do svého projektu v Pythonu. Oba balíčky fungují jako samostatná API a není nutné mít nainstalovaný Microsoft Office.

Jsou podporovány všechny formáty prezentací PowerPoint a OpenDocument?

Aspose.Slides for Python .NET supports all presentation formats, including PPT, PPTX, ODP, and other common file types. This ensures that you can work with presentations created in various versions of Microsoft PowerPoint.