Добавление прямоугольников в презентации на Python

Создать простой прямоугольник

Как и в предыдущих темах, здесь также рассматривается добавление фигуры, а именно — прямоугольника. В этой теме мы описали, как разработчики могут добавлять простые или форматированные прямоугольники в свои презентации с помощью Aspose.Slides for Python via .NET. Чтобы добавить простой прямоугольник на выбранный слайд презентации, выполните следующие шаги:

  1. Создайте экземпляр класса Presentation .
  2. Получите ссылку на слайд, используя его индекс.
  3. Добавьте IAutoShape типа Rectangle с помощью метода AddAutoShape, предоставляемого объектом IShapes.
  4. Сохраните изменённую презентацию в файл PPTX.

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

import aspose.slides as slides

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

    # Добавить автофигуру типа Rectangle
    sld.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 150, 150, 50)

    # Сохранить файл PPTX на диск
    pres.save("RectShp1_out.pptx", slides.export.SaveFormat.PPTX)

Создать форматированный прямоугольник

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

  1. Создайте экземпляр класса Presentation .
  2. Получите ссылку на слайд, используя его индекс.
  3. Добавьте IAutoShape типа Rectangle с помощью метода AddAutoShape, предоставляемого объектом IShapes.
  4. Установите тип заливки Rectangle в Solid.
  5. Задайте цвет прямоугольника через свойство SolidFillColor.Color объекта FillFormat, связанного с объектом IShape.
  6. Установите цвет линий прямоугольника.
  7. Установите толщину линий прямоугольника.
  8. Сохраните изменённую презентацию в файл PPTX. Приведённые выше шаги реализованы в примере ниже.
import aspose.slides as slides
import aspose.pydrawing as draw

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

    # Добавить автофигуру типа Rectangle
    shp = sld.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 150, 150, 50)

    # Применить некоторое форматирование к фигуре прямоугольника
    shp.fill_format.fill_type = slides.FillType.SOLID
    shp.fill_format.solid_fill_color.color = draw.Color.chocolate

    # Применить некоторое форматирование к линии прямоугольника
    shp.line_format.fill_format.fill_type = slides.FillType.SOLID
    shp.line_format.fill_format.solid_fill_color.color = draw.Color.black
    shp.line_format.width = 5

    #Сохранить файл PPTX на диск
    pres.save("RectShp2_out.pptx", slides.export.SaveFormat.PPTX)

FAQ

Как добавить прямоугольник со скруглёнными углами?

Используйте тип фигуры с закруглёнными углами shape type и настройте радиус скругления в свойствах фигуры; скругление можно применять отдельно к каждому углу с помощью геометрических корректировок.

Как заполнить прямоугольник изображением (текстурой)?

Выберите тип заливки изображения fill type, укажите источник изображения и настройте режимы растяжения/мозаики stretching/tiling modes.

Можно ли добавить к прямоугольнику тень и свечение?

Да. Доступны outer/inner shadow, glow и soft edges с настраиваемыми параметрами.

Можно ли превратить прямоугольник в кнопку с гиперссылкой?

Да. Assign a hyperlink к клику по фигуре (переход к слайду, файлу, веб‑адресу или e‑mail).

Как защитить прямоугольник от перемещения и изменений?

Use shape locks: вы можете запретить перемещение, изменение размеров, выделение или редактирование текста, чтобы сохранить макет.

Можно ли преобразовать прямоугольник в растровое изображение или SVG?

Да. Вы можете render the shape в изображение с указанными размерами/масштабом или export it as SVG для векторного использования.

Как быстро получить фактические (effective) свойства прямоугольника с учётом темы и наследования?

Use the shape’s effective properties: API возвращает вычисленные значения, учитывающие стили темы, макет и локальные настройки, упрощая анализ форматирования.