Come iniziare con Aspose.Slides FOSS per Java

Come iniziare con Aspose.Slides FOSS per Java

aspose-slides-foss per Java è una libreria gratuita, con licenza MIT, per creare e modificare file PowerPoint .pptx — non è necessario Microsoft Office, disponibile su Maven Central.

Guida passo-passo

Passo 1: Aggiungi la dipendenza Maven

Aggiungi la dipendenza al tuo pom.xml (necessario Java 21 o versioni successive):

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

Verifica che il pacchetto venga risolto correttamente compilando il progetto:

mvn dependency:resolve

Passo 2: Importa le classi necessarie

Importa le classi necessarie per caricare le presentazioni e salvarle:

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.ShapeType;
import org.aspose.slides.foss.FillType;

Passo 3: Crea una Presentazione

Costruisci un Presentation senza argomenti per iniziare con una diapositiva vuota. Usa sempre try-with-resources per garantire il rilascio delle risorse interne.

import org.aspose.slides.foss.Presentation;

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

Passo 4: Aggiungi una forma con testo

Usa slide.getShapes().addAutoShape() per inserire un rettangolo, quindi chiama addTextFrame() per aggiungere contenuto di testo:

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.NullableBool;

try (Presentation prs = new Presentation()) {
    ISlide slide = prs.getSlides().get(0);
    IAutoShape shape = slide.getShapes().addAutoShape(
        ShapeType.RECTANGLE, 50, 50, 400, 150
    );
    ITextFrame tf = shape.addTextFrame("Hello from Aspose.Slides FOSS!");
    IPortionFormat fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
    fmt.setFontHeight(24);
    fmt.setFontBold(NullableBool.TRUE);
    prs.save("with_shape.pptx");
}

Passo 5: Applica un riempimento e salva

Imposta un colore di riempimento solido sulla forma prima di salvare:

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;

try (Presentation prs = new Presentation()) {
    IAutoShape shape = prs.getSlides().get(0).getShapes().addAutoShape(
        ShapeType.RECTANGLE, 100, 100, 400, 200
    );
    shape.getFillFormat().setFillType(FillType.SOLID);
    shape.getFillFormat().getSolidFillColor().setColor(new Color(70, 130, 180));
    shape.addTextFrame("Styled shape");
    prs.save("styled.pptx");
}

Problemi comuni e soluzioni

ClassNotFoundException per org.aspose.slides.foss.Presentation
La dipendenza Maven non è risolta. Esegui mvn dependency:resolve e verifica che l’artifact
sia disponibile in Maven Central. Verifica la versione in pom.xml.

UnsupportedOperationException durante la chiamata di alcuni metodi Alcune funzionalità (grafici, animazioni, esportazione PDF) generano UnsupportedOperationException in questa versione. Controlla la sezione delle limitazioni note della documentazione API prima di utilizzare funzionalità avanzate.

Le coordinate della forma sembrano errate
Le coordinate e le dimensioni sono in EMU (English Metric Units). Un punto è approssimativamente
12700 EMU. La diapositiva predefinita è 9144000 × 6858000 EMU.

File non trovato durante il caricamento di un PPTX esistente
Fornisci un percorso assoluto o assicurati che la directory di lavoro sia impostata correttamente:

import java.nio.file.Paths;
String path = Paths.get("presentations", "existing.pptx").toAbsolutePath().toString();
try (Presentation prs = new Presentation(path)) { ... }

Domande Frequenti

aspose-slides-foss richiede Microsoft Office?

No. La libreria crea e legge i file .pptx nativamente in Java puro senza dipendenze da Microsoft Office, automazione COM o API Windows.

Quali versioni di Java sono supportate?

Java 21 o versioni successive. La libreria funziona su Windows, macOS, Linux e contenitori Docker.

La libreria è gratuita per uso commerciale?

Sì. È rilasciato sotto la licenza MIT. Puoi usarlo, modificarlo e ridistribuirlo per qualsiasi scopo, incluse le applicazioni commerciali.

Posso caricare un file PPTX esistente?

Sì. Passa il percorso del file al costruttore Presentation:

try (Presentation prs = new Presentation("existing.pptx")) {
    System.out.println("Loaded " + prs.getSlides().size() + " slides");
    prs.save("copy.pptx");
}

Devo chiudere la Presentation esplicitamente?

Sì. Presentation implementa AutoCloseable. Usa sempre try-with-resources (try (Presentation prs = new Presentation()) { ... }) per garantire la pulizia.

Vedi anche

 Italiano