Создание презентаций на Python

Обзор

В этой статье показано, как создать презентацию с помощью Aspose.Slides для Python через .NET, добавить форму с текстом на первый слайд и сохранить результат в файл PPTX. Тот же API также сохраняет презентации как PPT и ODP, поэтому вы можете работать с форматами PowerPoint и OpenDocument из одной кодовой базы, без Microsoft Office. Краткий FAQ в конце охватывает часто задаваемые вопросы о форматах, шаблонах, размере слайдов, единицах измерения, использовании памяти, многопоточности, лицензировании, цифровой подписи и поддержке VBA.

Перед началом установите пакет из PyPI с помощью pip install aspose.slides. См.Установка для библиотек, необходимых также на Linux и macOS, а также для виртуального окружения, требуемого системным Python в Debian и Ubuntu.

Создать презентацию

Чтобы создать презентацию и разместить форму с текстом на её первом слайде, выполните следующие шаги:

  1. Создайте экземпляр класса Presentation. Новая презентация уже содержит один пустой слайд.
  2. Получите этот слайд из коллекции slides по индексу 0.
  3. Добавьте облакообразную AutoShape с помощью метода add_auto_shape коллекции shapes слайда и установите её text.
  4. Сохраните презентацию в файл PPTX с помощью метода save.
import aspose.slides as slides

# Создайте экземпляр класса Presentation, представляющего файл презентации.
with slides.Presentation() as presentation:
    # Получите первый слайд.
    slide = presentation.slides[0]

    # Добавьте автофигуру типа CLOUD.
    auto_shape = slide.shapes.add_auto_shape(slides.ShapeType.CLOUD, 20, 20, 200, 80)
    auto_shape.text_frame.text = "Hello, Aspose!"

    # Сохраните презентацию в файл PPTX.
    presentation.save("new_presentation.pptx", slides.export.SaveFormat.PPTX)

Левый верхний угол облака находится на расстоянии 20 пунктов от левой границы и 20 пунктов от верхней границы слайда, а ширина облака составляет 200 пунктов, а высота — 80 пунктов. Оператор with освобождает ресурсы презентации по завершении блока. Скрипт сохраняет new_presentation.pptx в текущей папке, содержащий один слайд с облаком и его текстом. Без лицензии Aspose.Slides также добавляет водяной знак оценки к каждому сохраняемому слайду; см. Licensing.

Результат:

Новая презентация

FAQ

Какие форматы доступны для сохранения новой презентации?

Вы можете сохранять в PPTX, PPT и ODP, а также экспортировать в PDF, XPS, HTML, SVG, и изображения, среди прочего.

Можно ли начать с шаблона (POTX/POTM) и сохранить как обычный PPTX?

Да. Загрузите шаблон и сохраните в нужный формат; форматы POTX/POTM/PPTM и аналогичные поддерживаются.

Как управлять размером/соотношением сторон слайда при создании презентации?

Установите slide size (включая предустановки 4:3 и 16:9 или пользовательские размеры) и выберите, как должно масштабироваться содержимое.

В каких единицах измеряются размеры и координаты?

В пунктах: 1 дюйм равен 72 единицам.

Как работать с очень большими презентациями (с множеством медиафайлов), чтобы сократить использование памяти?

Используйте BLOB management strategies, ограничьте хранение в памяти, используя временные файлы, и предпочтительно применяйте файловые рабочие процессы вместо полностью в‑памяти потоков.

Можно ли создавать/сохранять презентации параллельно?

Вы не можете работать с тем же экземпляром Presentation из нескольких потоков. Запускайте отдельные, изолированные экземпляры для каждого потока или процесса.

Как удалить пробный водяной знак и ограничения?

Применить лицензию один раз на процесс. XML‑файл лицензии должен оставаться неизменным, а настройка лицензии должна синхронизироваться, если задействовано несколько потоков.

Можно ли цифрово подписать создаваемый PPTX?

Да. Digital signatures (добавление и проверка) поддерживаются для презентаций.

Поддерживаются ли макросы (VBA) в созданных презентациях?

Да. Вы можете create/edit VBA projects и сохранять файлы с поддержкой макросов, такие как PPTM/PPSM.