Πώς να φορτώσετε παρουσιάσεις στο Java
Aspose.Slides FOSS for Java lets you open any .pptx αρχείο, ελέγξτε το περιεχόμενό του και είτε αποθηκεύσετε πίσω στο PPTX ή εξάγετε δεδομένα από αυτό. Αυτό το εγχειρίδιο καλύπτει την ανοίγηση ενός αρχείου, ιταριστικά σκιές, ανάγνωση σχήματος κειμένου, και περιτριγυρίζοντας τη διατήρηση.
Βήμα προς βήμα οδηγός
Βήμα 1: Προσθέστε την εξάρτηση Maven
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>26.7.0</version>
</dependency>Βήμα 2: Ανοίξτε μια υπάρχουσα παρουσίαση
Μεταβείτε το αρχείο στο δρόμο της Presentation Χρησιμοποιήστε δοκιμαστικούς πόρους για να εξασφαλίσετε την καθαριότητα.
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IShape;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IDocumentProperties;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation("input.pptx")) {
System.out.println("Slide count: " + prs.getSlides().size());
prs.save("output.pptx", SaveFormat.PPTX);
}Τα άγνωστα τμήματα XML στο αρχείο προέλευσης διατηρούνται με λεκτική μορφή: η βιβλιοθήκη δεν αφαιρεί ποτέ περιεχόμενο που δεν καταλαβαίνει ακόμα.
Βήμα 3: Ελέγξτε τα Slides
Εισάγετε πάνω από όλα τα σκιές και εκτυπώστε τον αριθμό σχήματος τους:
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IShape;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IDocumentProperties;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation("deck.pptx")) {
for (int i = 0; i < prs.getSlides().size(); i++) {
ISlide slide = prs.getSlides().get(i);
int shapeCount = slide.getShapes().size();
System.out.println("Slide " + i + ": " + shapeCount + " shapes");
}
}Βήμα 4: Διαβάστε το κείμενο σχήματος
Διαβάστε το κείμενο και διαβάστε τα σχήματα που έχουν ένα TextFrame:
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IShape;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IDocumentProperties;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation("deck.pptx")) {
for (ISlide slide : prs.getSlides()) {
for (IShape shape : slide.getShapes()) {
if (shape instanceof IAutoShape) {
IAutoShape autoShape = (IAutoShape) shape;
ITextFrame tf = autoShape.getTextFrame();
if (tf != null && !tf.getText().isEmpty()) {
System.out.println(" Shape text: " + tf.getText());
}
}
}
}
}Βήμα 5: Διαβάστε τα στοιχεία του εγγράφου
Η πρόσβαση στις ιδιότητες κεντρικού εγγράφου από prs.getDocumentProperties():
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IShape;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IDocumentProperties;
import org.aspose.slides.foss.export.SaveFormat;
try (Presentation prs = new Presentation("deck.pptx")) {
IDocumentProperties props = prs.getDocumentProperties();
System.out.println("Title: " + props.getTitle());
System.out.println("Author: " + props.getAuthor());
System.out.println("Subject: " + props.getSubject());
}Βήμα 6: Σώστε το Round-Trip
Μετά την επανεξέταση ή τροποποίηση της παρουσίασης, αποθηκεύστε το πίσω στο PPTX:
prs.save("output.pptx", SaveFormat.PPTX);Η αποθήκευση σε διαφορετικό μονοπάτι δημιουργεί ένα νέο αρχείο. η αποθηκεύση στο ίδιο μονό υπερβαίνει το πρωτότυπο.
Κοινά προβλήματα και τακτοποιήσεις
java.io.FileNotFoundException
Δείτε το δρόμο προς την .pptx Το αρχείο είναι σωστό σε σχέση με το εργασιακό κατάλογο. java.nio.file.Paths Για την κατασκευή του δρόμου:
import java.nio.file.Path;
import java.nio.file.Paths;
Path path = Paths.get("assets", "deck.pptx");
try (Presentation prs = new Presentation(path.toString())) {
// ...
}Exception: File format is not supported
Η βιβλιοθήκη υποστηρίζει .pptx (Office Open XML) μόνο. κληρονομιά .ppt (βινική PowerPoint 97-2003) αρχεία δεν υποστηρίζονται.
Οι μορφές δεν έχουν getTextFrame() μέθοδο
Ορισμένες μορφές (Συνδέσεις, Πίνακες εικόνας, GroupShapes) δεν έχουν ένα πλαίσιο κειμένου. instanceof IAutoShape πριν από την ανάθεση και πρόσβαση στο κείμενο.
Συχνές ερωτήσεις
Η φόρτιση διατηρεί όλο το πρωτότυπο περιεχόμενο;?
Ναι. άγνωστα μέρη XML διατηρούνται verbatim σε στρογγυλό αποθήκευση. η βιβλιοθήκη μόνο εκτυπώνει τα μέρια του μοντέλου εγγράφου που καταλαβαίνει, και περνά μέσα από οποιοδήποτε XML δεν αναγνωρίζει.
Μπορώ να φορτώ ένα κρυφό προστατευμένο PPTX;?
Οι προτάσεις που προστατεύονται από κωδικούς πρόσβασης (κρυπτογραφημένες) δεν υποστηρίζονται σε αυτή την έκδοση.
Υποστηρίζεται η φόρτωση από ένα InputStream;?
Ναι, το Presentation Ο κατασκευαστής δέχεται ένα InputStream:
import java.io.FileInputStream;
try (FileInputStream fis = new FileInputStream("deck.pptx");
Presentation prs = new Presentation(fis)) {
System.out.println("Slides: " + prs.getSlides().size());
}