Wie man Präsentationen in Java lädt

Wie man Präsentationen in Java lädt

Aspose.Slides FOSS for Java lets you open any .pptx Diese Anleitung umfasst das Öffnen einer Datei, Iteration von Folien, Lesen von Formtext und Rundfahrt beim Speichern.

Schritt für Schritte

Schritt 1: Hinzufügen der Maven-Abhängigkeit

<dependency>
  <groupId>org.aspose</groupId>
  <artifactId>aspose-slides-foss</artifactId>
  <version>26.7.0</version>
</dependency>

Schritt 2: Öffnen Sie eine vorhandene Präsentation

Übergeben Sie den Pfad der Datei an die Presentation Die Kommission hat die Möglichkeit, den Bau von Bauten zu verhindern.

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);
}

Unbekannte XML-Teile in der Quelldatei werden wörtlich erhalten: Die Bibliothek entfernt nie Inhalte, die sie noch nicht versteht.


Schritt 3: Slides überprüfen

Iterate über alle Folien und drucken Sie ihre Formzahl:

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");
    }
}

Schritt 4: Lesen von Textform

Iteration über Formen und Lesen von Text aus Formularen, die eine 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());
                }
            }
        }
    }
}

Schritt 5: Lesen der Dokument-Eigenschaften

Zugriff auf Kerndokument-Eigenschaften von: 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());
}

Schritt 6: Rundfahrt speichern

Nach der Überprüfung oder Änderung der Darstellung speichern Sie sie wieder in PPTX:

prs.save("output.pptx", SaveFormat.PPTX);

Wenn man auf einen anderen Pfad speichert, erstellt sich eine neue Datei.


Häufige Probleme und Lösungen

java.io.FileNotFoundException

Überprüfen Sie, ob der Weg zum .pptx Die Datenbank ist nicht korrekt im Verhältnis zum Arbeitsverzeichnis. java.nio.file.Paths für robuste Bahnkonstruktionen:

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

Die Bibliothek unterstützt die .pptx (Office Open XML) nur. Vermächtlichte Versionen .ppt (binäres PowerPoint 97-2003) nicht unterstützt.

Formen haben keine getTextFrame-Methode ().

Einige Formen (Connectors, PictureFrames, GroupShapes) haben keinen Textrahmen. Überprüfen Sie die folgenden Informationen: instanceof IAutoShape Vor dem Verleihen und Zugriff auf Text.


Häufig gestellte Fragen

Wird bei der Aufladung alle Originalinhalte erhalten?

Ja. Unbekannte XML-Teile werden wörtlich bei der Rundreise gespeichert. Die Bibliothek serialisiert nur die Teile des Dokumentmodells, das sie versteht, und geht durch jedes nicht erkannte XML.

Kann ich ein passwortgeschütztes PPTX laden?

Passwortgeschützte (verschlüsselte) Präsentationen werden in dieser Ausgabe nicht unterstützt.

Wird das Laden von einem InputStream unterstützt?

Ja, die… Presentation Konstrukteur akzeptiert eine InputStream:

import java.io.FileInputStream;

try (FileInputStream fis = new FileInputStream("deck.pptx");
     Presentation prs = new Presentation(fis)) {
    System.out.println("Slides: " + prs.getSlides().size());
}

Siehe auch:

 Deutsch