Конвертация презентаций PowerPoint в документы Word на Python

Обзор

Эта статья предоставляет разработчикам решение по конвертации презентаций PowerPoint и OpenDocument в документы Word с использованием Aspose.Slides for Python via .NET и Aspose.Words for Python via .NET. Пошаговое руководство проведёт вас через каждый этап процесса конвертации.

Конвертировать презентацию в документ Word

Следуйте инструкциям ниже, чтобы конвертировать презентацию PowerPoint или OpenDocument в документ Word:

  1. Создайте экземпляр класса Presentation и загрузите файл презентации.
  2. Создайте экземпляры классов Document и DocumentBuilder для создания документа Word.
  3. Установите размер страницы документа Word в соответствии с размерами презентации, используя свойство DocumentBuilder.page_setup.
  4. Установите поля в документе Word, используя свойство DocumentBuilder.page_setup.
  5. Пройдитесь по всем слайдам презентации, используя свойство Presentation.slides.
    • Сгенерируйте изображение слайда, используя метод get_image класса Slide и сохраните его в поток памяти.
    • Добавьте изображение слайда в документ Word, используя метод insert_image класса DocumentBuilder.
  6. Сохраните документ Word в файл.

Допустим, у нас есть презентация “sample.pptx”, выглядящая так:

Презентация PowerPoint

Следующий пример кода на Python демонстрирует, как конвертировать презентацию PowerPoint в документ Word:

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

# Загрузить файл презентации.
with slides.Presentation("sample.pptx") as presentation:

    # Создать объекты Document и DocumentBuilder.
    document = words.Document()
    builder = words.DocumentBuilder(document)

    # Установить размер страницы в документе Word.
    slide_size = presentation.slide_size.size
    builder.page_setup.page_width = slide_size.width
    builder.page_setup.page_height = slide_size.height

    # Установить поля в документе 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

    # Пройтись по всем слайдам презентации.
    for slide in presentation.slides:

        # Сгенерировать изображение слайда и сохранить его в поток памяти.
        with slide.get_image(scale_x, scale_y) as image:
            image_stream = BytesIO()
            image.save(image_stream, slides.ImageFormat.PNG)

        # Добавить изображение слайда в документ 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)

    # Сохранить документ Word в файл.
    document.save("output.docx")

Результат:

Документ Word

FAQ

Какие компоненты необходимо установить для конвертации презентаций PowerPoint и OpenDocument в документы Word?

Вам достаточно добавить соответствующие пакеты для Aspose.Slides for Python via .NET и Aspose.Words for Python .NET в ваш проект Python. Оба пакета работают как автономные API, и установка Microsoft Office не требуется.

Поддерживаются ли все форматы презентаций PowerPoint и OpenDocument?

Aspose.Slides for Python .NET поддерживает все форматы презентаций, включая PPT, PPTX, ODP и другие распространённые типы файлов. Это гарантирует, что вы сможете работать с презентациями, созданными в различных версиях Microsoft PowerPoint.