Aspose.Slides FOSS för Java är ett MIT-licensierat pure-Java bibliotek för att arbeta med PowerPoint .pptx filer. Lägg till ett enda Maven‑beroende och börja omedelbart skapa, läsa och redigera presentationer utan att installera Microsoft Office eller någon proprietär runtime.
Biblioteket exponerar ett Presentation‑API byggt kring Presentation, Slide, Shape, TextFrame, Paragraph och Portion, den konceptuella modell som PowerPoint själv använder. Lägg till och ta bort bilder, infoga AutoShapes, Tabeller och Kopplingar, formatera text på teckennivå med fet, kursiv, teckenstorlek och färg, applicera solida eller gradientfyllningar och lägg till visuella effekter (skugga, glöd, oskärpa, reflektion).
Klassen Presentation implementerar AutoCloseable, så använd try-with-resources för pålitlig städning. Okända XML-delar som påträffas under inläsning bevaras ordagrant vid sparning, så rundresning förstör aldrig innehåll som biblioteket ännu inte förstår. För ytterligare funktioner och support, se Aspose.Slides for Java enterprise edition.
.pptx-filer via new Presentation() eller new Presentation(path).SlideCollection programatiskt med addClone(), addEmptySlide(), remove() och removeAt().ShapeType geometrier via addAutoShape().addConnector().NotesSlideManager.getSlideComments().Portion objekt via getPortionFormat().getFillFormat() och FillType.getEffectFormat().getParagraphFormat().setAlignment().Aspose.Slides FOSS installeras med ett enda Maven-beroende (org.aspose.slides.foss:aspose-slides-foss). Biblioteket är ren Java utan inhemska tillägg att kompilera och utan systempaket att installera.
API:et speglar PowerPoints egna objektmodell (Presentation, Slide, Shape, TextFrame, Paragraph, Portion), så att alla som är bekanta med PowerPoint‑objektmodellen kan använda biblioteket omedelbart. Det är MIT‑licensierat, öppen källkod på GitHub, och kräver JDK 21 eller senare.
Använd try-with-resources för att säkerställa att Presentation alltid stängs och resurser frigörs. addAutoShape() tar en ShapeType enum, sedan x/y-position och bredd/höjd i punkter. Anropa addTextFrame() för att skapa textramen och sätta den initiala texten i ett anrop — anropa inte getTextFrame() före addTextFrame() eftersom ramen är null tills den skapats.
<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>
Textformatering fungerar på Portion-nivå — den minsta enheten i en sekvens av tecken. Öppna den sparade filen, navigera till den första delen av det första stycket och ställ in teckensnittsegenskaper via getters och setters. Formfyllning är oberoende: sätt FillType till SOLID och tilldela en färg via 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");
}
Det är ett gratis, MIT-licensierat pure-Java bibliotek för att skapa, läsa och redigera PowerPoint .pptx-presentationer utan att kräva Microsoft Office.
.pptx är det stödjade läs/skriv-formatet. Export till PDF, HTML, SVG eller bilder är inte tillgängligt i den här utgåvan.
Nej. Aspose.Slides FOSS är ett rent-Java bibliotek utan beroende av Microsoft Office, COM-automatisering eller någon proprietär runtime.
Lägg till Maven‑beroendet org.aspose.slides.foss:aspose-slides-foss:1.0.0 i ditt projekt. Inga ytterligare systempaket eller inhemska tillägg krävs. JDK 21 eller senare krävs.
Ja. Biblioteket stöder yttre skugga, glöd, oskärpa och reflektionseffekter på alla formobjekt via EffectFormat API.
Ja. Presentation implementerar AutoCloseable, så använd alltid try (Presentation prs = new Presentation()) { ... } för pålitlig resurshantering.
Nej. Okända XML-delar som påträffas under inläsning bevaras ordagrant vid sparning, så innehåll som biblioteket ännu inte förstår går aldrig förlorat.
Biblioteket är licensierat under MIT och är hostat på GitHub. Felrapporter och pull‑requests är välkomna.