Introduction
Aspose.Slides FOSS for Java is a free, open-source library that lets Java developers create and manipulate PowerPoint presentations without any dependency on Microsoft Office. The library ships under the org.aspose.slides.foss Les objectifs et les paquets Java 21 et plus haut.
Le projet est sorti sous la licence MIT, vous pouvez donc l’utiliser dans les projets personnels et commerciaux à aucun coût et sans clé API. Il fournit des classes pour les images, les formes, le texte, la table, l’image, vos commentaires et les propriétés de document, soutenus par la manipulation directe du format Office Open XML package.
Avec 273 classes, plus de 2600 méthodes et 42 enumerations, l’API cache les blocs de construction dont vous avez besoin pour automatiser les flux de travail de présentation dans n’importe quelle application Java.
Ce qui est inclus
Présentation du cycle de vie
Le Presentation classe est le point d’entrée pour chaque opération. Vous pouvez créer une présentation blanche et enregistrer le résultat sur un disque ou sur une OutputStream dans un certain nombre de formats. la classe implémenter AutoCloseable,Il fonctionne naturellement avec les blocs de ressources try-with.
import org.aspose.slides.foss.*;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation pres = new Presentation()) {
// A new presentation starts with one blank slide
System.out.println("Slides: " + pres.getSlides().size());
pres.save("output.pptx", SaveFormat.PPTX);
}
Gestion de Slide
SlideCollection Vous pouvez ajouter des slides blancs avec addEmptySlide(),duplicer les images existantes avec addClone(),- Insérer des images sur un index spécifique avec insertEmptySlide(), supprimer les slides par référence ou index, et itérer sur la collection.
try (Presentation pres = new Presentation()) {
var layout = pres.getLayoutSlides().get(0);
pres.getSlides().addEmptySlide(layout);
pres.getSlides().addClone(pres.getSlides().get(0));
System.out.println("Total slides: " + pres.getSlides().size());
}
Formes et AutoShapes
Le AutoShape classe représente l’objet le plus courant sur un slide. vous créez des formes à travers IShapeCollection.addAutoShape(),spécifiant A ShapeType constants (comme les ShapeType.RECTANGLEet les coordonnées de position. chacune AutoShape Exposé à TextFrame Pour le contenu et un FillFormat pour le style visuel.
try (Presentation pres = new Presentation()) {
var slide = pres.getSlides().get(0);
IAutoShape shape = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 300, 100, false);
ITextFrame tf = shape.addTextFrame("Hello from Aspose.Slides FOSS");
System.out.println(tf.getText());
}
Textes et paragraphes
Le texte est formé comme une hiérarchie de TextFrame, ParagraphCollection, Paragraph, PortionCollection,et Portion Vous pouvez définir un texte plain sur un cadre directement avec TextFrame.setText(),ou construire des paragraphes multi-rendu en ajoutant un individu Portion Des exemples de formats distincts.
try (Presentation pres = new Presentation()) {
var slide = pres.getSlides().get(0);
IAutoShape shape = slide.getShapes()
.addAutoShape(ShapeType.RECTANGLE, 50, 50, 400, 100, false);
ITextFrame tf = shape.addTextFrame("First run ");
Portion extra = new Portion("second run");
tf.getParagraphs().get(0).getPortions().add(extra);
System.out.println(tf.getText());
}
Propriétés de document
Le DocumentProperties classe expose les champs de métadonnées standard tels que le titre, l’auteur, le sujet, les mots-clés, la catégorie et les timestamps. Les propriétés sont persistantes dans le noyau PPTX et extendent les propriété parties et survivent à des cycles d’enregistrement/reload rond-trip.
try (Presentation pres = new Presentation()) {
IDocumentProperties props = pres.getDocumentProperties();
props.setTitle("Quarterly Report");
props.setAuthor("Engineering Team");
pres.save("report.pptx", SaveFormat.PPTX);
}
Commentaires et annotations
Le sous-système de commentaire comprend CommentAuthorCollection et CommentCollection.Vous pouvez ajouter des auteurs, ajouter des commentaires à des images et positions spécifiques et réviser les notes existantes. Les données de commentaire sont persistantes dans les parties d’avis du paquet PPTX et survivent aux cycles de sauvegarde/reload en rond-trip.
Démarrage rapide
Ajoutez la dépendance Maven à votre pom.xml Pour inclure Aspose.Slides FOSS pour Java dans votre projet:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>26.7.0</version>
</dependency>Créer et sauvegarder une présentation :
import org.aspose.slides.foss.*;
import org.aspose.slides.foss.export.SaveFormat;
public class QuickStart {
public static void main(String[] args) {
try (Presentation pres = new Presentation()) {
var slide = pres.getSlides().get(0);
// Add a title shape
IAutoShape title = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 30, 600, 60, false);
title.addTextFrame("Aspose.Slides FOSS for Java");
// Add a content shape
IAutoShape body = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 120, 600, 300, false);
body.addTextFrame(
"This presentation was created entirely in Java "
+ "using a free, open-source library.");
pres.save("quick-start.pptx", SaveFormat.PPTX);
}
}
}
Formats soutenus
Le SaveFormat L’enumeration définit chaque format de sortie que la bibliothèque peut écrire.La table ci-dessous présente les entrées confirmées.
| Formats | Extension | Écrire |
|---|---|---|
| PPTX | .pptx | Oui |
| PPTM | .pptm | Planifié |
| PPSX | .ppsx | Planifié |
| PPSM | .PPSM | Planifié |
| POTX | .Le Potx | Planifié |
| POTM | .Le POTM | Planifié |
| ODP | .ODP | Planifié |
| OTP | .OTP | Planifié |
| FODP | .FODP | Planifié |
| PPT | .Pt | Planifié |
| PPS | .pps | Planifié |
| POT | .Le Pot | Planifié |
| Planifié | ||
| XPS | .xps | Planifié |
| HTML | .html | Planifié |
| HTML5 | .html | Planifié |
| SVG | .svg | Planifié |
| TIFF | .TIFF | Planifié |
| PNG | .PNG | Planifié |
| JPEG | .JPG | Planifié |
| BMP | .bmp | Planifié |
| GIF | .GIF | Planifié |
| MD | .Md | Planifié |
Note : PPTX est pleinement mis en œuvre. SaveFormat Les valeurs enum (PPT, ODP, PDF, PNG, etc.) sont définis pour la compatibilité à l’avant et seront fonctionnelles dans les futures éditions ; leur transmission au save() Il produit actuellement des produits PPTX.
Source ouverte et licence
Aspose.Slides FOSS for Java is distributed under the MIT license. The full source code is available on GitHub at Aspose.Slides-FOSS-for-Java.Vous êtes libre d’utiliser, de modifier et de redistribuer la bibliothèque dans n’importe quel projet sans royalties ou clés de licence.
Pour commencer
Prêt à plonger plus profondément? Voici les ressources pour vous aider à commencer:
- Guide de développeur - Des parcours et des tutoriels pour chaque domaine de fonctionnalité
- Base de connaissances Comment faire des articles et poser souvent des questions
- Le référencement API - Documentaire de classe et méthode complète