Добавление прямоугольников в презентации на 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 возвращает вычисленные значения, учитывающие стили темы, макет и локальные настройки, упрощая анализ форматирования.