Wie man mit Aspose.Slides FOSS für Java anfängt
aspose-slides-foss für Java ist eine kostenlose, MIT-lizenzierte Bibliothek zum Erstellen und Bearbeiten von PowerPoint .pptx Dateien keine Microsoft Office erforderlich, verfügbar auf Maven Central.
Schritt für Schritte
Schritt 1: Hinzufügen der Maven-Abhängigkeit
Hinzu kommt die Abhängigkeit von Ihrem pom.xml (Erforderlich Java 21 oder höher):
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>Überprüfen Sie, ob das Paket korrekt aufgelöst ist, indem Sie das Projekt erstellen:
mvn dependency:resolveSchritt 2: Import der erforderlichen Klassen
Importieren Sie die Klassen, die für das Laden von Präsentationen und Speichern benötigt werden:
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;Schritt 3: Erstellen Sie eine Präsentation
Konstruktion einer Presentation Die Verwendung von “Wirklichkeit” ist nicht unbedingt nötig. Versuche, die internen Ressourcen freizugeben:
import org.aspose.slides.foss.Presentation;
try (Presentation prs = new Presentation()) {
System.out.println("Slides: " + prs.getSlides().size());
prs.save("new_presentation.pptx");
}Schritt 4: Fügen Sie eine Form mit Text hinzu
Verwendung slide.getShapes().addAutoShape() Ein rechteckige, dann rufen addTextFrame() zur Hinzufügung von Textinhalten:
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IPortionFormat;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.NullableBool;
try (Presentation prs = new Presentation()) {
ISlide slide = prs.getSlides().get(0);
IAutoShape shape = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 400, 150
);
ITextFrame tf = shape.addTextFrame("Hello from Aspose.Slides FOSS!");
IPortionFormat fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
fmt.setFontHeight(24);
fmt.setFontBold(NullableBool.TRUE);
prs.save("with_shape.pptx");
}Schritt 5: Füllen und Speichern
Setzen Sie eine feste Füllfarbe auf die Form vor dem Speichern:
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation()) {
IAutoShape shape = prs.getSlides().get(0).getShapes().addAutoShape(
ShapeType.RECTANGLE, 100, 100, 400, 200
);
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor().setColor(new Color(70, 130, 180));
shape.addTextFrame("Styled shape");
prs.save("styled.pptx");
}Häufige Probleme und Lösungen
ClassNotFoundException für die org.aspose.slides.foss.Presentation Die Maven-Abhängigkeit ist nicht gelöst. mvn dependency:resolve und prüfen, ob die Die Veröffentlichung des Artefakts ist in Maven Central verfügbar. pom.xml.
UnsupportedOperationException bei Anrufen bestimmter Methoden Einige Funktionen (Charts, Animationen, PDF-Export) werfen UnsupportedOperationException Überprüfen Sie den Abschnitt über bekannte Einschränkungen der API-Referenz, bevor Sie die Daten verwenden. Erweiterte Funktionen.
Die Koordinaten scheinen nicht richtig zu sein . Die Koordinaten und Abmessungen sind in EMU (Englische Metric Units). 12700 EMU. The default slide is 9144000 × 6858000 EMU.
Datei beim Laden eines vorhandenen PPTX nicht gefunden Absolute Pfadüberweisung oder Sicherstellung, dass das Arbeitsverzeichnis korrekt eingestellt ist:
import java.nio.file.Paths;
String path = Paths.get("presentations", "existing.pptx").toAbsolutePath().toString();
try (Presentation prs = new Presentation(path)) { ... }Häufig gestellte Fragen
Benötigt Aspose-Slides-Foss Microsoft Office?
Die Bibliothek schafft und liest. .pptx Dateien in reiner Java ohne Abhängigkeit auf Microsoft Office, COM-Automatisierung oder Windows-API.
Welche Java-Versionen werden unterstützt?
Die Bibliothek läuft auf Windows, MacOS, Linux und Docker-Containern.
Ist die Bibliothek für kommerzielle Zwecke frei?
Ja, es ist unter der MIT-Lizenz veröffentlicht. Sie können es für jeden Zweck verwenden, ändern und weitergeben, auch für kommerzielle Anwendungen.
Kann ich eine vorhandene PPTX-Datei laden?
Ja, geben Sie den Pfad der Datei an die Presentation Konstrukteur:
try (Presentation prs = new Presentation("existing.pptx")) {
System.out.println("Loaded " + prs.getSlides().size() + " slides");
prs.save("copy.pptx");
}Muss ich die Präsentation explizit schließen?
- Ja, das ist gut.
PresentationAusrüstungsgegenständeAutoCloseable.- Verwenden Sie immer Versuche mit Ressourcen . (try (Presentation prs = new Presentation()) { ... }) zur Gewährleistung der Reinigung.