Εισαγωγή
Aspose.Slides FOSS for Java is now available on Maven Central: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx αρχεία εξ ολοκλήρου σε Java, χωρίς εξάρτηση από το Microsoft Office ή οποιοδήποτε ιδιόκτητο runtime.
Η βιβλιοθήκη έχει σχεδιαστεί για προγραμματιστές που χρειάζονται να δημιουργούν ή να χειρίζονται αρχεία παρουσίασης προγραμματιστικά: αυτοματοποιώντας σετ διαφανειών από δεδομένα, εξάγοντας κείμενο και μεταδεδομένα από ανεβασμένα αρχεία PPTX, δημιουργώντας pipelines αναφοράς βασισμένα σε παρουσιάσεις, ή ενσωματώνοντας τη δημιουργία παρουσιάσεων σε εφαρμογές Spring Boot. Επειδή aspose-slides-foss είναι καθαρό Java, αναπτύσσεται με τον ίδιο τρόπο σε Windows, macOS, Linux και Docker containers.
Βασικά Χαρακτηριστικά
- Πλήρης υποστήριξη πλήρους κύκλου PPTX: Άνοιγμα οποιουδήποτε
.pptxαρχείο, τροποποιήστε το περιεχόμενό του και αποθηκεύστε το ξανά χωρίς να χάσετε άγνωστα τμήματα XML που η βιβλιοθήκη δεν καταλαβαίνει ακόμη. - Διαχείριση διαφανειών: Προσθήκη, αφαίρεση και επανάληψη διαφανειών χρησιμοποιώντας
prs.getSlides(); η παρουσίαση ξεκινά με μία κενή διαφάνεια μετά απόnew Presentation(). - AutoShapes, Πίνακες και Συνδέσμους: Εισαγωγή σχημάτων μέσω
slide.getShapes().addAutoShape(), δεδομένα πίνακα μέσωslide.getShapes().addTable(), και οπτικούς συνδέσμους μεταξύ σχημάτων μέσωslide.getShapes().addConnector(). - Μορφοποίηση εμπλουτισμένου κειμένου: Μορφοποίηση κειμένου σε επίπεδο χαρακτήρα με
PortionFormat: μέγεθος γραμματοσειράς, έντονη, πλάγια, υπογράμμιση και χρώμα ARGB μέσωFillType.SOLIDκαιColorFormat. - Τύποι γεμίσματος: Εφαρμογή
FillType.SOLID,GRADIENT,PATTERN, ήPICTUREγεμίζει σε οποιοδήποτε σχήμα. - Οπτικά εφέ: Εξωτερική σκιά, λάμψη, απαλό άκρο, θόλωση, αντανάκλαση και εσωτερική σκιά μέσω
shape.getEffectFormat(). - 3D formatting: Λοξότμηση, κάμερα, σύστημα φωτισμού, υλικό και βάθος εξώθησης μέσω
shape.getThreeDFormat(). - Σημειώσεις ομιλητή: Επισύναψη κειμένου σημειώσεων σε κάθε διαφάνεια μέσω
getNotesSlideManager().addNotesSlide(). - Σχόλια με νήματα: Προσθήκη σχολίων με μεταδεδομένα συγγραφέα και θέση διαφάνειας.
- Ενσωματωμένες εικόνες: Ενσωμάτωση από διαδρομή αρχείου, bytes ή
InputStream. - Ιδιότητες εγγράφου: Ανάγνωση και εγγραφή βασικών, ιδιοτήτων εφαρμογής και προσαρμοσμένων ιδιοτήτων.
Ξεκινώντας
Προσθέστε την εξάρτηση Maven. Απαιτείται Java 21 ή νεότερη έκδοση.
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
Δημιουργήστε την πρώτη σας παρουσίαση με ένα σχήμα και αποθηκεύστε την:
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.FillType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.export.SaveFormat;
import org.aspose.slides.foss.drawing.Color;
public class HelloSlides {
public static void main(String[] args) {
try (Presentation prs = new Presentation()) {
ISlide slide = prs.getSlides().get(0);
IAutoShape shape = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 400, 120
);
shape.addTextFrame("Hello from Aspose.Slides FOSS!");
prs.save("hello.pptx");
}
}
}
Πάντα χρησιμοποιήστε Presentation μέσα σε μπλοκ try-with-resources· αυτό εξασφαλίζει ότι όλοι οι εσωτερικοί πόροι απελευθερώνονται όταν το μπλοκ τερματίζει.
Παράδειγμα Μορφοποίησης Κειμένου
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.FillType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.export.SaveFormat;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation()) {
IAutoShape shape = prs.getSlides().get(0).getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 500, 150
);
ITextFrame tf = shape.addTextFrame("Bold heading in corporate blue");
IPortionFormat fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
fmt.setFontHeight(28);
fmt.setFontBold(NullableBool.TRUE);
fmt.getFillFormat().setFillType(FillType.SOLID);
fmt.getFillFormat().getSolidFillColor().setColor(new Color(0, 70, 127));
prs.save("formatted.pptx");
}
Τρέχοντες περιορισμοί
Οι παρακάτω περιοχές εξαποστέλλουν UnsupportedOperationException σε αυτήν την έκδοση:
- Διαγράμματα, SmartArt και αντικείμενα OLE
- Κινούμενα σχέδια και μεταβάσεις διαφάνειας
- Εξαγωγή σε PDF, HTML, SVG ή μορφές εικόνας
- Υπερσυνδέσεις, ρυθμίσεις ενεργειών, μακροεντολές VBA και ψηφιακές υπογραφές
Άγνωστα τμήματα XML που εντοπίζονται κατά τη φόρτωση διατηρούνται ακριβώς όπως είναι κατά την αποθήκευση, ώστε τα αρχεία PPTX που παράγονται από άλλα εργαλεία να διασχίζουν το κύκλο με ασφάλεια.