Kā ielādēt prezentācijas Java

Kā ielādēt prezentācijas Java

Aspose.Slides FOSS for Java lets you open any .pptx fails, pārbaudiet tā saturu un vai nu saglabājiet to atpakaļ PPTX vai izvelciet no tā datus. Šis ceļvedis aptver faila atvēršanu, slaidu iterāciju, formas teksta nolasīšanu un saglabāšanas atgriešanu.

Solī pa solim rokasgrāmata

1. solis: Pievienojiet Maven atkarību

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

2. solis: Atvērt esošu prezentāciju

Pārsūtiet faila ceļu uz Presentation konstruktora. Izmantojiet try-with-resources, lai nodrošinātu iztīrīšanu.

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

Nezināmās XML daļas avota failā tiek saglabātas burtiski: bibliotēka nekad neizņem saturu, ko tā vēl nesaprot.


3. solis: Pārbaudīt slaidus

Iterējiet pār visiem slaidiem un izdrukājiet to formu skaitu:

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. solis: Nolasīt formas tekstu

Iterējiet pār formām un nolasiet tekstu no formām, kurām ir a 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. solis: Nolasīt dokumenta īpašības

Piekļūstiet galvenajām dokumenta īpašībām no 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. solis: Apgrieztais saglabāšana

Pēc prezentācijas pārbaudes vai modificēšanas, saglabājiet to atpakaļ PPTX formātā:

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

Saglabāšana citā ceļā izveido jaunu failu. Saglabāšana tajā pašā ceļā pārraksta oriģinālu.


Biežāk sastopamās problēmas un to risinājumi

java.io.FileNotFoundException

Pārbaudiet, vai ceļš uz .pptx fails ir pareizs attiecībā uz darba direktoriju. Izmantojiet java.nio.file.Paths robustai ceļa konstrukcijai:

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

Bibliotēka atbalsta .pptx (Office Open XML) tikai. Legacy .ppt (binary PowerPoint 97-2003) faili netiek atbalstīti.

Formām nav getTextFrame() metodes

Dažām formām (Connectors, PictureFrames, GroupShapes) nav teksta rāmja. Pārbaudiet ar instanceof IAutoShape pirms pārvēršanas un teksta piekļuves.


Biežāk uzdotie jautājumi

Vai ielāde saglabā visu sākotnējo saturu?

Jā. Nezināmās XML daļas tiek saglabātas precīzi apgrieztā saglabāšanas procesā. Bibliotēka serializē tikai tās dokumenta modeļa daļas, kuras saprot, un caurļauj jebkuru XML, ko neatpazīst.

Vai varu ielādēt ar paroli aizsargātu PPTX?

Paroli aizsargātas (šifrētas) prezentācijas šajā izdevumā netiek atbalstītas.

Vai ielāde no InputStream tiek atbalstīta?

Jā. Šis Presentation konstruktors pieņem InputStream:

import java.io.FileInputStream;

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

Skatīt arī

 Latviešu