Преобразовать PPT, PPTX и ODP в JPG на Python

Обзор

Конвертация презентаций PowerPoint и OpenDocument в JPG‑изображения помогает делиться слайдами, оптимизировать производительность и встраивать контент в веб‑сайты или приложения. Aspose.Slides для Python позволяет преобразовать файлы PPTX, PPT и ODP в изображения высокого качества JPEG. В этом руководстве объясняются различные методы конвертации.

Благодаря этим возможностям легко реализовать собственный просмотрщик презентаций и создать миниатюру для каждого слайда. Это может быть полезно, если вы хотите защитить слайды презентации от копирования или продемонстрировать презентацию в режиме только для чтения. Aspose.Slides позволяет конвертировать всю презентацию или отдельный слайд в форматы изображений.

Конвертировать слайды презентации в JPG‑изображения

  1. Создайте экземпляр класса Presentation.
  2. Получите объект слайда типа Slide из коллекции Presentation.slides.
  3. Создайте изображение слайда, используя метод Slide.get_image(scale_x, scale_y).
  4. Вызовите метод IImage.save(filename, format) у объекта изображения. Передайте имя выходного файла и формат изображения в качестве аргументов.
import aspose.slides as slides

scale_x = 1
scale_y = scale_x

with slides.Presentation("PowerPoint_Presentation.ppt") as presentation:
    for slide in presentation.slides:
        with slide.get_image(scale_x, scale_y) as thumbnail:
            # Сохранить изображение на диск в формате JPEG.
            file_name = f"Slide_{slide.slide_number}.jpg"
            thumbnail.save(file_name, slides.ImageFormat.JPEG)

Конвертировать слайды в JPG с пользовательскими размерами

Чтобы изменить размеры получаемых JPG‑изображений, вы можете задать размер изображения, передав его в метод Slide.get_image(image_size). Это позволяет создавать изображения с конкретными значениями ширины и высоты, гарантируя, что результат соответствует вашим требованиям к разрешению и соотношению сторон. Такая гибкость особенно полезна при генерации изображений для веб‑приложений, отчетов или документации, где требуются точные размеры изображения.

import aspose.slides as slides
import aspose.pydrawing as pydrawing

image_size = pydrawing.Size(1200, 800)

with slides.Presentation("PowerPoint_Presentation.pptx") as presentation:
    for slide in presentation.slides:
        # Создать изображение слайда указанного размера.
        with slide.get_image(image_size) as thumbnail:
            # Сохранить изображение на диск в формате JPEG.
            file_name = f"Slide_{slide.slide_number}.jpg"
            thumbnail.save(file_name, slides.ImageFormat.JPEG)

Отображать комментарии при сохранении слайдов как изображения

Aspose.Slides для Python предоставляет возможность отображать комментарии на слайдах презентации при их конвертации в JPG‑изображения. Эта функция особенно полезна для сохранения аннотаций, отзывов или обсуждений, добавленных сотрудниками в презентациях PowerPoint. Включив эту опцию, вы гарантируете, что комментарии будут видны на сгенерированных изображениях, что упрощает их просмотр и обмен отзывами без необходимости открывать исходный файл презентации.

Предположим, у нас есть файл презентации “sample.pptx” со слайдом, содержащим комментарии:

The slide with comments

Следующий код на Python преобразует слайд в JPG‑изображение с сохранением комментариев:

import aspose.slides as slides
import aspose.pydrawing as pydrawing

scale_x = 1
scale_y = scale_x

with slides.Presentation("sample.pptx") as presentation:
    # Установить параметры для комментариев слайда.
    comments_options = slides.export.NotesCommentsLayoutingOptions()
    comments_options.comments_position = slides.export.CommentsPositions.RIGHT
    comments_options.comments_area_width = 200
    comments_options.comments_area_color = pydrawing.Color.dark_orange

    options = slides.export.RenderingOptions()
    options.slides_layout_options = comments_options

    # Преобразовать первый слайд в изображение.
    with presentation.slides[0].get_image(options, scale_x, scale_y) as thumbnail:
        thumbnail.save("Slide_1.jpg", slides.ImageFormat.JPEG)

Результат:

The JPG image with comments

См. также

Смотрите другие варианты конвертации PPT, PPTX или ODP в изображения, например:

Free Online PPTX to JPG Converter

FAQ

Поддерживает ли этот метод пакетную конвертацию?

Да, Aspose.Slides позволяет выполнять пакетную конвертацию нескольких слайдов в JPG за одну операцию.

Поддерживает ли конвертация SmartArt, диаграммы и другие сложные объекты?

Да, Aspose.Slides отображает весь контент, включая SmartArt, диаграммы, таблицы, фигуры и многое другое. Однако точность отображения может немного отличаться от PowerPoint, особенно при использовании пользовательских или отсутствующих шрифтов.

Есть ли ограничения на количество слайдов, которые можно обработать?

Сам Aspose.Slides не накладывает строгих ограничений на количество обрабатываемых слайдов. Однако при работе с большими презентациями или изображениями высокого разрешения вы можете столкнуться с ошибкой нехватки памяти.