Aspose.Slides FOSS per Java è una libreria pure-Java con licenza MIT per lavorare con file .pptx di PowerPoint. Aggiungi una singola dipendenza Maven e inizia subito a creare, leggere e modificare presentazioni senza installare Microsoft Office o alcun runtime proprietario.
La libreria espone un’API di Presentazione costruita attorno a Presentation, Slide, Shape, TextFrame, Paragraph e Portion, il modello concettuale usato da PowerPoint stesso. Aggiungi e rimuovi diapositive, inserisci AutoShapes, Tables e Connectors, formatta il testo a livello di carattere con bold, italic, font size e color, applica riempimenti solidi o gradienti e aggiungi effetti visivi (shadow, glow, blur, reflection).
La classe Presentation implementa AutoCloseable, quindi usa try-with-resources per una pulizia affidabile. Le parti XML sconosciute incontrate durante il caricamento vengono preservate alla lettera al salvataggio, così il round-tripping non distrugge mai i contenuti che la libreria non comprende ancora. Per funzionalità aggiuntive e supporto, vedi Aspose.Slides for Java enterprise edition.
.pptx esistenti tramite new Presentation() o new Presentation(path).SlideCollection con addClone(), addEmptySlide(), remove(), e removeAt().ShapeType tramite addAutoShape().addConnector().NotesSlideManager.getSlideComments().Portion tramite getPortionFormat().getFillFormat() e FillType.getEffectFormat().getParagraphFormat().setAlignment().Aspose.Slides FOSS si installa con una singola dipendenza Maven (org.aspose.slides.foss:aspose-slides-foss). La libreria è pura Java senza estensioni native da compilare e senza pacchetti di sistema da installare.
L’API rispecchia il modello di oggetti di PowerPoint (Presentation, Slide, Shape, TextFrame, Paragraph, Portion), quindi chiunque conosca il modello di oggetti di PowerPoint può utilizzare la libreria immediatamente. È rilasciata con licenza MIT, è open-source su GitHub e richiede JDK 21 o versioni successive.
Usa try-with-resources per garantire che il Presentation sia sempre chiuso e le risorse vengano liberate. addAutoShape() accetta un enum ShapeType, poi la posizione x/y e larghezza/altezza in punti. Chiama addTextFrame() per creare il frame di testo e impostare il testo iniziale in una sola chiamata — non chiamare getTextFrame() prima di addTextFrame() poiché il frame è nullo fino a quando non viene creato.
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
import org.aspose.slides.foss.*;
try (Presentation prs = new Presentation()) {
ISlide slide = prs.getSlides().get(0);
// Add a rectangle AutoShape
IAutoShape shape = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 400, 150
);
shape.addTextFrame("Hello, Aspose.Slides!");
prs.save("output.pptx");
}
```xml
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
La formattazione del testo funziona a livello di Portion — l’unità più piccola di una sequenza di caratteri. Apri il file salvato, naviga alla prima porzione del primo paragrafo e imposta le proprietà del font tramite getter e setter. Il riempimento della forma è indipendente: imposta FillType su SOLID e assegna un colore tramite getSolidFillColor().setColor().
import org.aspose.slides.foss.*;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation("output.pptx")) {
IAutoShape shape = (IAutoShape) prs.getSlides().get(0).getShapes().get(0);
IPortion portion = shape.getTextFrame()
.getParagraphs().get(0).getPortions().get(0);
// Bold, 18pt, dark-blue text
portion.getPortionFormat().setFontBold(NullableBool.TRUE);
portion.getPortionFormat().setFontHeight(18);
portion.getPortionFormat().getFillFormat()
.getSolidFillColor().setColor(new Color(0, 0, 139));
// Solid background fill on the shape
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor()
.setColor(new Color(240, 248, 255));
prs.save("formatted.pptx");
}
```java
import org.aspose.slides.foss.*;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation("output.pptx")) {
IAutoShape shape = (IAutoShape) prs.getSlides().get(0).getShapes().get(0);
IPortion portion = shape.getTextFrame()
.getParagraphs().get(0).getPortions().get(0);
// Bold, 18pt, dark-blue text
portion.getPortionFormat().setFontBold(NullableBool.TRUE);
portion.getPortionFormat().setFontHeight(18);
portion.getPortionFormat().getFillFormat()
.getSolidFillColor().setColor(new Color(0, 0, 139));
// Solid background fill on the shape
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor()
.setColor(new Color(240, 248, 255));
prs.save("formatted.pptx");
}
È una libreria pure-Java gratuita, con licenza MIT, per creare, leggere e modificare presentazioni PowerPoint .pptx senza richiedere Microsoft Office.
.pptx è il formato di lettura/scrittura supportato. L’esportazione in PDF, HTML, SVG o immagini non è disponibile in questa edizione.
No. Aspose.Slides FOSS è una libreria pure-Java senza dipendenze da Microsoft Office, automazione COM o qualsiasi runtime proprietario.
Aggiungi la dipendenza Maven org.aspose.slides.foss:aspose-slides-foss:1.0.0 al tuo progetto. Non sono richiesti pacchetti di sistema aggiuntivi né estensioni native. È richiesto JDK 21 o successivo.
Sì. La libreria supporta effetti di ombra esterna, bagliore, sfocatura e riflessione su qualsiasi oggetto forma tramite l’API EffectFormat.
Sì. Presentation implementa AutoCloseable, quindi usa sempre try (Presentation prs = new Presentation()) { ... } per una pulizia affidabile delle risorse.
No. Le parti sconosciute di XML incontrate durante il caricamento vengono preservate alla lettera al salvataggio, quindi il contenuto che la libreria non comprende ancora non viene mai perso.
La libreria è rilasciata sotto licenza MIT ed è ospitata su GitHub. Segnalazioni di bug e pull request sono benvenute.