Le forme nelle presentazioni PowerPoint vengono utilizzate per elaborare un punto particolare o creare diagrammi come diagrammi di flusso, ecc. Inoltre, l’inclusione di forme rende la presentazione più accattivante. Pertanto, PowerPoint fornisce una serie di forme come linea, ellisse, rettangolo, ecc. In questo articolo imparerai come automatizzare la manipolazione delle forme nelle presentazioni di PowerPoint. In particolare, l’articolo tratterà come aggiungere, collegare, clonare o rimuovere forme nelle presentazioni PowerPoint utilizzando Java.
- API Java per lavorare con le forme di PowerPoint
- Tipi di forme PowerPoint
- Aggiungi forma alle diapositive di PowerPoint
- Aggiungi connettore alle forme nelle diapositive di PowerPoint
- Clona una forma nelle diapositive di PowerPoint
- Rimuovere le forme dalle diapositive di PowerPoint
- Ottieni una licenza API gratuita
API Java per lavorare con le forme di PowerPoint
Per lavorare con le forme PowerPoint, utilizzeremo Aspose.Slides for Java. È una potente API Java che ti consente di manipolare le presentazioni PowerPoint senza problemi. In particolare, l’API consente di creare, modificare, leggere e convertire i documenti di presentazione. Puoi scaricare l’API o installarla utilizzando la seguente configurazione 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>
Tipi di forme PowerPoint
PowerPoint supporta una varietà di forme che puoi aggiungere alle diapositive della presentazione. Di conseguenza, Aspose.Slides per Java supporta i seguenti tipi di forma:
Aggiungi forma alle diapositive di PowerPoint in Java
Aspose.Slides per Java fornisce la classe ShapeType per specificare il tipo di forma che si desidera aggiungere. Di seguito sono riportati i passaggi per aggiungere una forma particolare in una presentazione PowerPoint utilizzando Java.
- Innanzitutto, crea un’istanza della classe Presentazione per crearne una nuova o caricare una presentazione PowerPoint esistente.
- Ottieni il riferimento della diapositiva in un oggetto ISlide.
- Aggiungi la forma usando il metodo ISlide.getShapes().addAutoShape(ShapeType.Ellipse, float, float, float, float).
- Infine, salva la presentazione usando il metodo Presentation.save(String, SaveFormat.Pptx).
Nell’esempio di codice seguente viene illustrato come aggiungere una forma a una presentazione di PowerPoint tramite Java.
// Istanziare la classe Presentation che rappresenta il PPTX
Presentation pres = new Presentation();
// Ottieni la prima diapositiva
ISlide sld = pres.getSlides().get_Item(0);
// Aggiungi AutoShape di tipo ellisse
sld.getShapes().addAutoShape(ShapeType.Ellipse, 100, 150, 150, 100);
// Scrivi il file PPTX su disco
pres.save("add_shape.pptx", SaveFormat.Pptx);
Quello che segue è l’output che otterrai dopo aver eseguito questo codice.
Aggiungi connettore tra forme PowerPoint utilizzando Java
Il connettore è una linea che viene utilizzata per unire due forme. Inoltre, un connettore potrebbe essere una linea retta o curva. Di seguito sono riportati i passaggi per aggiungere un connettore tra due forme di PowerPoint.
- Innanzitutto, crea un’istanza della classe Presentation per caricare la presentazione.
- Ottieni la raccolta delle forme in un oggetto IShapeCollection utilizzando il metodo Presentation.getSlides().getItem(0).getShapes().
- Aggiungi due forme usando il metodo IShapeCollection.addAutoShape(ShapeType.Ellipse, float, float, float, float) e ottieni i loro riferimenti negli oggetti IAutoShape.
- Creare un connettore usando il metodo IShapeCollection.addConnector(ShapeType.BentConnector2, float, float, float, float) e ottenerne il riferimento nell’oggetto IConnector.
- Unisci le forme usando i metodi IConnector.setStartShapeConnectedTo(IAutoShape) e IConnector.setEndShapeConnectedTo(IAutoShape).
- Infine, salva la presentazione usando il metodo Presentation.save(String, SaveFormat.Pptx).
L’esempio di codice seguente mostra come aggiungere un connettore tra due forme in PowerPoint usando Java.
// Istanziare la classe Presentation che rappresenta il file PPTX
Presentation input = new Presentation();
// Accedi alla raccolta di forme per la diapositiva selezionata
IShapeCollection shapes = input.getSlides().get_Item(0).getShapes();
// Aggiungi Autoshape Ellisse
IAutoShape ellipse = shapes.addAutoShape(ShapeType.Ellipse, 0, 100, 100, 100);
// Aggiungi rettangolo di forma automatica
IAutoShape rectangle = shapes.addAutoShape(ShapeType.Rectangle, 100, 300, 100, 100);
// Aggiungi la forma del connettore alla raccolta delle forme delle diapositive
IConnector connector = shapes.addConnector(ShapeType.BentConnector2, 0, 0, 10, 10);
// Unisci forme ai connettori
connector.setStartShapeConnectedTo(ellipse);
connector.setEndShapeConnectedTo(rectangle);
connector.reroute();
// Salva presentazione
input.save("connect_shape.pptx", SaveFormat.Pptx);
Quello che segue è lo screenshot della presentazione di PowerPoint dopo aver collegato le forme.
Clona una forma PowerPoint usando Java
Puoi anche clonare una forma PowerPoint per crearne una copia. Di seguito sono riportati i passaggi per eseguire questa operazione.
- Innanzitutto, crea un’istanza della classe Presentation per crearne una nuova o caricare una presentazione PowerPoint esistente.
- Ottieni il riferimento della diapositiva in un oggetto ISlide.
- Ottieni la raccolta di forme nell’oggetto IShapeCollection utilizzando il metodo Presentation.getSlides().getItem(0).getShapes().
- Aggiungi il clone di una forma usando il metodo IShapeCollection.addClone(sourceShapes[int]).
- Infine, salva la presentazione usando il metodo Presentation.save(String, SaveFormat.Pptx).
L’esempio di codice seguente mostra come aggiungere il clone di una forma PowerPoint usando Java.
// Istanziare la classe di presentazione che rappresenta il PPTX
Presentation pres = new Presentation();
// Ottieni la prima diapositiva
ISlide sld = pres.getSlides().get_Item(0);
// Aggiungi AutoShape di tipo rettangolo
IShape shp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 75, 150);
// Ruota la forma a 90 gradi
shp.setRotation(90);
// Scrivi il file PPTX su disco
pres.save("clone_shape.pptx", SaveFormat.Pptx);
Rimuovere le forme dalle diapositive di PowerPoint in Java
Puoi anche rimuovere le forme di PowerPoint da una diapositiva usando Aspose.Slides per Java. Di seguito sono riportati i passaggi per rimuovere una forma PowerPoint dall’insieme di forme.
- Innanzitutto, crea un’istanza della classe Presentazione per caricare una presentazione PowerPoint.
- Ottieni il riferimento della diapositiva desiderata in un oggetto ISlide.
- Rimuovere una forma particolare per indice utilizzando il metodo ISlide.getShapes().removeAt(int).
- Infine, salva la presentazione usando il metodo Presentation.save(String, SaveFormat.Pptx).
Nell’esempio di codice seguente viene illustrato come rimuovere una forma PowerPoint da una diapositiva utilizzando Java.
// Carica presentazione
Presentation presentation1 = new Presentation("clone_shape.pptx");
// Ottieni diapositiva
ISlide slide = presentation1.getSlides().get_Item(0);
// Dai forma al testo per trovare la forma
String alttext = "User Defined";
// Ottieni il numero di forme
int iCount = slide.getShapes().size();
// Passa attraverso le forme
for (int i = 0; i < iCount; i++) {
// Prendi forma
IAutoShape ashp = (IAutoShape) slide.getShapes().get_Item(0);
if (ashp.getAlternativeText().compareTo(alttext) == 0) {
// Rimuovi forma
slide.getShapes().remove(ashp);
}
}
presentation1.save("remove_shape.pptx", SaveFormat.Pptx);
Ottieni una licenza API gratuita
Puoi ottenere una licenza temporanea gratuita per utilizzare l’API senza limitazioni di valutazione.
Conclusione
In questo articolo, hai imparato a lavorare con le forme nelle presentazioni di PowerPoint utilizzando Java. In particolare, hai visto come aggiungere, collegare, rimuovere o clonare le forme di PowerPoint. Inoltre, puoi esplorare di più sull’API consultando la sua documentazione. Inoltre, in caso di domande, non esitare a farcelo sapere tramite il nostro forum.