Добавление слайдов в презентации на Python
Обзор
Aspose.Slides позволяет программно добавлять слайды в презентации PowerPoint. Презентация содержит слайды‑мастера/макета и обычные слайды, и обычные слайды упорядочены по нулевому индексу. Каждый слайд имеет уникальный идентификатор, а файлы презентаций без слайдов не поддерживаются.
В этой статье объясняется, как создать объект Presentation , получить его коллекцию слайдов, добавить пустой слайд, работать с только что добавленным слайдом и сохранить обновлённую презентацию. Также рассматриваются связанные вопросы, такие как вставка слайдов в определённую позицию, использование макетов и понимание пустого слайда, который существует в только что созданной презентации.
Добавление слайда в презентацию
Прежде чем обсуждать, как добавлять слайды в файлы презентаций, рассмотрим некоторые факты о слайдах. Каждый файл презентации PowerPoint содержит мастер/макет‑слайды и обычные слайды. Файл презентации содержит как минимум один слайд. Файлы презентаций без слайдов не поддерживаются Aspose.Slides for Python via Java. Каждый слайд имеет уникальный идентификатор, и все обычные слайды упорядочены в порядке, задаваемом нулевым индексом.
Aspose.Slides for Python via Java позволяет разработчикам добавлять пустые слайды в свои презентации. Чтобы добавить пустой слайд в презентацию, выполните следующие шаги:
- Создайте экземпляр класса Presentation .
- Получите ссылку на объект SlideCollection с помощью метода getSlides , предоставляемого объектом Presentation .
- Добавьте пустой слайд в конец коллекции слайдов презентации, вызвав метод addEmptySlide , предоставляемый объектом SlideCollection .
- Выполните необходимые действия с только что добавленным пустым слайдом.
- Наконец, запишите файл презентации, используя объект Presentation .
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat
# Создайте экземпляр класса Presentation, представляющего файл презентации.
presentation = Presentation()
try:
# Получить коллекцию слайдов.
slides = presentation.getSlides()
for i in range(presentation.getLayoutSlides().size()):
# Добавить пустой слайд в коллекцию слайдов.
slides.addEmptySlide(presentation.getLayoutSlides().get_Item(i))
# Выполнить некоторые действия с только что добавленным слайдом.
# Сохранить файл PPTX на диск.
presentation.save("EmptySlide.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
FAQ
Могу ли я вставить новый слайд в определённую позицию, а не только в конец?
Да. Библиотека поддерживает операции над коллекциями слайдов и insert/clone , поэтому можно добавить слайд по требуемому индексу, а не только в конец.
Сохраняются ли темы/стили при добавлении слайда на основе макета?
Да. Макет наследует форматирование от своего мастера, а новый слайд наследует его от выбранного макета и связанного с ним мастера.
Какой слайд присутствует в новой «пустой» презентации до добавления слайдов?
В только что созданной презентации уже есть один пустой слайд с индексом ноль. Это важно учитывать при расчёте индексов вставки.
Как выбрать «правильный» макет для нового слайда, если у мастера много вариантов?
Обычно выбирают LayoutSlide , который соответствует требуемой структуре (Title and Content, Two Content и т.д.). Если такой макет отсутствует, его можно add it to the master и затем использовать.