Работа с фигурами PowerPoint в Java

Фигуры в презентациях PowerPoint используются для уточнения определенного момента или создания диаграмм, таких как блок-схемы и т. д. Более того, включение фигур делает презентацию более привлекательной. Поэтому PowerPoint предоставляет ряд фигур, таких как линия, эллипс, прямоугольник и т. д. В этой статье вы узнаете, как автоматизировать манипулирование фигурами в презентациях PowerPoint. В частности, в статье будет рассказано, как добавлять, подключать, клонировать или удалять фигуры в презентациях PowerPoint с помощью Java.

Java API для работы с фигурами PowerPoint

Для работы с фигурами PowerPoint мы будем использовать Aspose.Slides for Java. Это мощный Java API, который позволяет легко управлять презентациями PowerPoint. В частности, API позволяет создавать, изменять, читать и преобразовывать документы презентации. Вы можете либо скачать API, либо установить его, используя следующую конфигурацию Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.3</version>
    <classifier>jdk16</classifier>
</dependency>

Типы фигур PowerPoint

PowerPoint поддерживает множество фигур, которые можно добавлять к слайдам презентации. Соответственно, Aspose.Slides for Java поддерживает следующие типы фигур:

Добавить фигуру в слайды PowerPoint в Java

Aspose.Slides для Java предоставляет класс ShapeType для указания типа фигуры, которую вы хотите добавить. Ниже приведены шаги по добавлению определенной формы в презентацию PowerPoint с помощью Java.

В следующем примере кода показано, как добавить фигуру в презентацию PowerPoint с помощью Java.

// Создание экземпляра класса Presentation, представляющего PPTX.
Presentation pres = new Presentation();

// Получить первый слайд
ISlide sld = pres.getSlides().get_Item(0);

// Добавить автофигуру типа эллипса
sld.getShapes().addAutoShape(ShapeType.Ellipse, 100, 150, 150, 100);

// Запишите файл PPTX на диск
pres.save("add_shape.pptx", SaveFormat.Pptx);

Ниже приведен вывод, который вы получите после выполнения этого кода.

Добавить фигуру PowerPoint в Java

Добавить соединитель между фигурами PowerPoint с помощью Java

Соединитель — это линия, которая используется для соединения двух фигур. Кроме того, соединитель может быть прямой или изогнутой линией. Ниже приведены шаги по добавлению соединителя между двумя фигурами PowerPoint.

В следующем примере кода показано, как добавить соединитель между двумя фигурами в PowerPoint с помощью Java.

// Создать экземпляр класса Presentation, который представляет файл PPTX.
Presentation input = new Presentation();

// Доступ к коллекции фигур для выбранного слайда
IShapeCollection shapes = input.getSlides().get_Item(0).getShapes();

// Добавить эллипс автофигуры
IAutoShape ellipse = shapes.addAutoShape(ShapeType.Ellipse, 0, 100, 100, 100);

// Добавить прямоугольник автофигуры
IAutoShape rectangle = shapes.addAutoShape(ShapeType.Rectangle, 100, 300, 100, 100);

// Добавить форму соединителя в коллекцию фигур слайдов
IConnector connector = shapes.addConnector(ShapeType.BentConnector2, 0, 0, 10, 10);

// Присоединение фигур к соединителям
connector.setStartShapeConnectedTo(ellipse);
connector.setEndShapeConnectedTo(rectangle);
connector.reroute();

// Сохранить презентацию
input.save("connect_shape.pptx", SaveFormat.Pptx);

Ниже приведен скриншот презентации PowerPoint после соединения фигур.

Подключение фигур PowerPoint в Java

Клонировать фигуру PowerPoint с помощью Java

Вы также можете клонировать фигуру PowerPoint, чтобы создать ее копию. Ниже приведены шаги для выполнения этой операции.

В следующем примере кода показано, как добавить клон фигуры PowerPoint с помощью Java.

// Создание экземпляра класса Presentation, представляющего PPTX.
Presentation pres = new Presentation();

// Получить первый слайд
ISlide sld = pres.getSlides().get_Item(0);

// Добавить автофигуру прямоугольного типа
IShape shp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 75, 150);

// Поверните фигуру на 90 градусов
shp.setRotation(90);

// Запишите файл PPTX на диск
pres.save("clone_shape.pptx", SaveFormat.Pptx);

Удалить фигуры из слайдов PowerPoint в Java

Вы также можете удалить фигуры PowerPoint со слайда с помощью Aspose.Slides for Java. Ниже приведены шаги по удалению фигуры PowerPoint из коллекции фигур.

  • Сначала создайте экземпляр класса Presentation для загрузки презентации PowerPoint.
  • Получить ссылку на нужный слайд в объект ISlide.
  • Удалите определенную фигуру по индексу, используя метод ISlide.getShapes().removeAt(int).
  • Наконец, сохраните презентацию, используя метод Presentation.save(String, SaveFormat.Pptx).

В следующем примере кода показано, как удалить фигуру PowerPoint со слайда с помощью Java.

// Загрузить презентацию
Presentation presentation1 = new Presentation("clone_shape.pptx");

// Получить слайд
ISlide slide = presentation1.getSlides().get_Item(0);

// Форма текста, чтобы найти форму
String alttext = "User Defined";

// Получить количество фигур
int iCount = slide.getShapes().size();

// Цикл по фигурам
for (int i = 0; i < iCount; i++) {
	
	// Получить форму
	IAutoShape ashp = (IAutoShape) slide.getShapes().get_Item(0);
	if (ashp.getAlternativeText().compareTo(alttext) == 0) {    
		// Удалить фигуру
		slide.getShapes().remove(ashp);
	}
}
presentation1.save("remove_shape.pptx", SaveFormat.Pptx);

Получите бесплатную лицензию API

Вы можете получить бесплатную временную лицензию, чтобы использовать API без ограничений на пробную версию.

Вывод

В этой статье вы узнали, как работать с фигурами в презентациях PowerPoint с помощью Java. В частности, вы видели, как добавлять, подключать, удалять или клонировать фигуры PowerPoint. Кроме того, вы можете узнать больше об API, ознакомившись с его документацией. Кроме того, в случае возникновения каких-либо вопросов, не стесняйтесь сообщить нам об этом через наш форум.

Смотрите также