Comment démarrer avec Aspose.Slides FOSS pour Java
aspose-slides-foss pour Java est une bibliothèque gratuite, sous licence MIT, pour créer et modifier des fichiers PowerPoint .pptx — aucun Microsoft Office requis, disponible sur Maven Central.
Guide étape par étape
Étape 1 : Ajouter la dépendance Maven
Ajoutez la dépendance à votre pom.xml (Java 21 ou version ultérieure requis) :
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>Vérifiez que le package se résout correctement en construisant le projet :
mvn dependency:resolveÉtape 2 : Importer les classes requises
Importez les classes dont vous avez besoin pour charger les présentations et les enregistrer :
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;Étape 3 : Créer une présentation
Construisez un Presentation sans arguments pour commencer avec une diapositive vierge. Utilisez toujours
try-with-resources pour garantir la libération des ressources internes :
import org.aspose.slides.foss.Presentation;
try (Presentation prs = new Presentation()) {
System.out.println("Slides: " + prs.getSlides().size());
prs.save("new_presentation.pptx");
}Étape 4 : Ajouter une forme avec du texte
Utilisez slide.getShapes().addAutoShape() pour insérer un rectangle, puis appelez addTextFrame() pour ajouter du texte :
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");
}Étape 5 : Appliquer un remplissage et enregistrer
Définissez une couleur de remplissage unie sur la forme avant d’enregistrer :
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");
}Problèmes courants et solutions
ClassNotFoundException for org.aspose.slides.foss.Presentation
La dépendance Maven n’est pas résolue. Exécutez mvn dependency:resolve et vérifiez que l’artefact est disponible dans Maven Central.
Vérifiez la version dans pom.xml.
UnsupportedOperationException lors de l’appel de certaines méthodes
Certaines fonctionnalités (graphes, animations, exportation PDF) génèrent UnsupportedOperationException
dans cette version. Consultez la section des limitations connues de la référence API avant d’utiliser
des fonctionnalités avancées.
Les coordonnées de la forme semblent incorrectes
Les coordonnées et les dimensions sont en EMU (English Metric Units). Un point correspond approximativement
à 12700 EMU. La diapositive par défaut est de 9144000 × 6858000 EMU.
Fichier introuvable lors du chargement d’un PPTX existant
Passez un chemin absolu ou assurez‑vous que le répertoire de travail est correctement défini :
import java.nio.file.Paths;
String path = Paths.get("presentations", "existing.pptx").toAbsolutePath().toString();
try (Presentation prs = new Presentation(path)) { ... }Foire aux questions
aspose-slides-foss nécessite-t-il Microsoft Office ?
Non. La bibliothèque crée et lit les fichiers .pptx nativement en Java pur, sans dépendance à Microsoft Office, à l’automatisation COM ou aux API Windows.
Quelles versions de Java sont prises en charge ?
Java 21 ou version ultérieure. La bibliothèque fonctionne sous Windows, macOS, Linux et les conteneurs Docker.
La bibliothèque est‑elle gratuite pour une utilisation commerciale ?
Oui. Il est publié sous la licence MIT. Vous pouvez l’utiliser, le modifier et le redistribuer pour tout usage, y compris les applications commerciales.
Puis-je charger un fichier PPTX existant ?
Oui. Passez le chemin du fichier au constructeur Presentation :
try (Presentation prs = new Presentation("existing.pptx")) {
System.out.println("Loaded " + prs.getSlides().size() + " slides");
prs.save("copy.pptx");
}Dois-je fermer explicitement la Presentation ?
Oui. Presentation implémente AutoCloseable. Utilisez toujours try-with-resources
(try (Presentation prs = new Presentation()) { ... }) pour garantir le nettoyage.