Добавление прямоугольников в презентации на Java
Добавить прямоугольник на слайд
Чтобы добавить простой прямоугольник на выбранный слайд презентации, выполните следующие шаги:
- Создайте экземпляр класса 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();
}
FAQ
Как добавить прямоугольник со скруглёнными углами?
Используйте тип фигуры с закруглёнными углами shape type и настройте радиус скругления в свойствах фигуры; закругление также можно применить к каждому углу отдельно с помощью геометрических корректировок.
Как залить прямоугольник изображением (текстурой)?
Выберите тип заливки picture fill type, укажите источник изображения и настройте режимы растягивания/повторения.
Можно ли добавить тень и свечение к прямоугольнику?
Да. Доступны внешняя/внутренняя тень, свечение и мягкие края с регулируемыми параметрами.
Можно ли превратить прямоугольник в кнопку с гиперссылкой?
Да. Можно назначить гиперссылку на клик фигуры (переход к слайду, файлу, веб‑адресу или электронной почте).
Как защитить прямоугольник от перемещения и изменений?
Используйте блокировки фигур: можно запретить перемещение, изменение размеров, выделение или редактирование текста, чтобы сохранить макет.
Можно ли преобразовать прямоугольник в растр или SVG?
Да. Вы можете отрендерить фигуру в изображение заданного размера/масштаба или экспортировать её как SVG для векторного использования.
Как быстро получить фактические (эффективные) свойства прямоугольника с учётом темы и наследования?
Используйте эффективные свойства фигуры: API возвращает вычисленные значения, учитывающие стили темы, макет и локальные настройки, упрощая анализ форматирования.