Com començar amb Aspose.Slides FOSS per a Java
aspose-slides-foss per a Java és una biblioteca gratuïta, amb llicència MIT, per crear i editar fitxers PowerPoint .pptx — sense necessitat de Microsoft Office, disponible a Maven Central.
Guia pas a pas
Pas 1: Afegeix la dependència Maven
Afegeix la dependència al teu pom.xml (es requereix Java 21 o posterior):
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>Verifiqueu que el paquet es resolgui correctament construint el projecte:
mvn dependency:resolvePas 2: Importa les classes necessàries
Importa les classes que necessites per carregar presentacions i desar:
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;Pas 3: Crea una presentació
Construeix un Presentation sense arguments per començar amb una diapositiva en blanc. Sempre utilitza
try-with-resources per assegurar que els recursos interns es alliberen:
import org.aspose.slides.foss.Presentation;
try (Presentation prs = new Presentation()) {
System.out.println("Slides: " + prs.getSlides().size());
prs.save("new_presentation.pptx");
}Pas 4: Afegeix una forma amb text
Utilitzeu slide.getShapes().addAutoShape() per inserir un rectangle, després crideu addTextFrame() per afegir contingut de text:
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");
}Pas 5: Aplica un farciment i desa
Estableix un color de farciment sòlid a la forma abans de desar:
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");
}Problemes comuns i solucions
ClassNotFoundException per org.aspose.slides.foss.Presentation
La dependència Maven no s’ha resolt. Executeu mvn dependency:resolve i comproveu que
l’artifact està disponible a Maven Central. Verifiqueu la versió a pom.xml.
UnsupportedOperationException en cridar determinades mètodes
Algunes funcions (gràfics, animacions, exportació PDF) llencen UnsupportedOperationException
en aquesta versió. Consulteu la secció de limitacions conegudes de la referència de l’API abans d’utilitzar
funcionalitats avançades.
Les coordenades de la forma semblen fora de lloc
Les coordenades i les dimensions estan en EMU (English Metric Units). Un punt és aproximadament
12700 EMU. La diapositiva predeterminada és 9144000 × 6858000 EMU.
Fitxer no trobat en carregar un PPTX existent
Passa una ruta absoluta o assegura’t que el directori de treball estigui configurat correctament:
import java.nio.file.Paths;
String path = Paths.get("presentations", "existing.pptx").toAbsolutePath().toString();
try (Presentation prs = new Presentation(path)) { ... }Preguntes freqüents
L’aspose-slides-foss requereix Microsoft Office?
No. La biblioteca crea i llegeix fitxers .pptx de manera nativa en Java pur sense cap dependència de Microsoft Office, automatització COM o APIs de Windows.
Quines versions de Java són compatibles?
Java 21 o posterior. La biblioteca s’executa a Windows, macOS, Linux i contenidors Docker.
La biblioteca és gratuïta per a ús comercial?
Sí. Es publica sota la Llicència MIT. Podeu utilitzar‑la, modificar‑la i redistribuir‑la per a qualsevol propòsit, incloses les aplicacions comercials.
Puc carregar un fitxer PPTX existent?
Sí. Passeu la ruta del fitxer al constructor Presentation:
try (Presentation prs = new Presentation("existing.pptx")) {
System.out.println("Loaded " + prs.getSlides().size() + " slides");
prs.save("copy.pptx");
}He de tancar la Presentació explícitament?
Sí. Presentation implementa AutoCloseable. Sempre utilitzeu try-with-resources (try (Presentation prs = new Presentation()) { ... }) per garantir la neteja.