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

Добавить прямоугольник на слайд

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

  • Создайте экземпляр класса Presentation.
  • Получите ссылку на слайд, используя его Index.
  • Добавьте IAutoShape типа Rectangle, используя метод addAutoShape объекта IShapeCollection.
  • Сохраните изменённую презентацию в файл PPTX.

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

// Создать экземпляр класса Presentation, представляющего PPTX
Presentation pres = new Presentation();
try {
    // Получить первый слайд
    ISlide sld = pres.getSlides().get_Item(0);

    // Добавить AutoShape типа эллипса
    IShape shp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 150, 50);

    // Записать файл PPTX на диск
    pres.save("RecShp1.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Добавить отформатированный прямоугольник на слайд

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

  • Создайте экземпляр класса Presentation.
  • Получите ссылку на слайд, используя его Index.
  • Добавьте IAutoShape типа Rectangle, используя метод addAutoShape объекта IShapeCollection.
  • Установите Fill Type прямоугольника в Solid.
  • Установите цвет прямоугольника, используя метод SolidFillColor.setColor объекта IFillFormat, связанного с объектом IShape.
  • Установите цвет линий прямоугольника.
  • Установите ширину линий прямоугольника.
  • Сохраните изменённую презентацию в файл PPTX.

Вышеуказанные шаги реализованы в примере, приведённом ниже.

// Создать экземпляр класса Presentation, представляющего PPTX
Presentation pres = new Presentation();
try {
    // Получить первый слайд
    ISlide sld = pres.getSlides().get_Item(0);

    // Добавить AutoShape типа эллипса
    IShape shp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 150, 50);

    // Применить некоторое форматирование к фигуре эллипса
    shp.getFillFormat().setFillType(FillType.Solid);
    shp.getFillFormat().getSolidFillColor().setColor(Color.GRAY);

    // Применить некоторое форматирование к линии эллипса
    shp.getLineFormat().getFillFormat().setFillType(FillType.Solid);
    shp.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.BLACK);
    shp.getLineFormat().setWidth(5);

    // Записать файл PPTX на диск
    pres.save("RecShp2.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Вопросы и ответы

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

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

Может ли прямоугольник иметь тень и светящийся ореол?
Да. Доступны внешние/внутренние тени, светящийся ореол и мягкие края с настраиваемыми параметрами.

Можно ли превратить прямоугольник в кнопку со ссылкой?
Да. Назначьте гиперссылку на клик по фигуре (переход к слайду, файлу, веб‑адресу или электронной почте).

Как защитить прямоугольник от перемещения и изменений?
Используйте блокировки фигур: вы можете запретить перемещение, изменение размеров, выделение или редактирование текста, чтобы сохранить макет.

Можно ли преобразовать прямоугольник в растровое изображение или SVG?
Да. Вы можете отрисовать фигуру в изображение указанного размера/масштаба или экспортировать её как SVG для векторного использования.

Как быстро получить фактические (эффективные) свойства прямоугольника с учётом темы и наследования?
Используйте эффективные свойства фигуры: API возвращает вычисленные значения, учитывающие стили темы, макет и локальные настройки, упрощая анализ форматирования.