Aspose.Slides FOSS para Java es una biblioteca pure-Java bajo licencia MIT para trabajar con archivos .pptx de PowerPoint. Añade una única dependencia de Maven y comienza inmediatamente a crear, leer y editar presentaciones sin instalar Microsoft Office ni ningún runtime propietario.
La biblioteca expone una API de Presentación construida alrededor de Presentation, Slide, Shape, TextFrame, Paragraph y Portion, el modelo conceptual utilizado por PowerPoint mismo. Añade y elimina diapositivas, inserta AutoShapes, Tables y Connectors, formatea texto a nivel de carácter con negrita, cursiva, tamaño de fuente y color, aplica rellenos sólidos o degradados, y agrega efectos visuales (sombra, resplandor, desenfoque, reflejo).
La clase Presentation implementa AutoCloseable, así que use try-with-resources para una limpieza fiable. Las partes desconocidas de XML encontradas durante la carga se conservan literalmente al guardar, de modo que el round-tripping nunca destruye contenido que la biblioteca aún no entiende. Para funciones adicionales y soporte, consulte Aspose.Slides for Java enterprise edition.
.pptx existentes mediante new Presentation() o new Presentation(path).SlideCollection con addClone(), addEmptySlide(), remove() y removeAt().ShapeType mediante addAutoShape().addConnector().NotesSlideManager.getSlideComments().Portion mediante getPortionFormat().getFillFormat() y FillType.getEffectFormat().getParagraphFormat().setAlignment().Aspose.Slides FOSS se instala con una única dependencia Maven (org.aspose.slides.foss:aspose-slides-foss). La biblioteca es pura Java sin extensiones nativas que compilar y sin paquetes del sistema que instalar.
La API refleja el propio modelo de objetos de PowerPoint (Presentation, Slide, Shape, TextFrame, Paragraph, Portion), por lo que cualquiera familiarizado con el modelo de objetos de PowerPoint puede usar la biblioteca de inmediato. Tiene licencia MIT, es de código abierto en GitHub y requiere JDK 21 o posterior.
Utilice try-with-resources para garantizar que el Presentation siempre se cierre y se liberen los recursos. addAutoShape() recibe un enum ShapeType, luego la posición x/y y el ancho/alto en puntos. Llame a addTextFrame() para crear el marco de texto y establecer el texto inicial en una sola llamada — no llame a getTextFrame() antes de addTextFrame() ya que el marco es nulo hasta que se cree.
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
import org.aspose.slides.foss.*;
try (Presentation prs = new Presentation()) {
ISlide slide = prs.getSlides().get(0);
// Add a rectangle AutoShape
IAutoShape shape = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 400, 150
);
shape.addTextFrame("Hello, Aspose.Slides!");
prs.save("output.pptx");
}
```xml
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
La formateo de texto funciona a nivel de Portion — la unidad más pequeña de una secuencia de caracteres. Abra el archivo guardado, navegue a la primera porción del primer párrafo y establezca las propiedades de la fuente mediante getters y setters. El relleno de la forma es independiente: establezca FillType a SOLID y asigne un color mediante getSolidFillColor().setColor().
import org.aspose.slides.foss.*;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation("output.pptx")) {
IAutoShape shape = (IAutoShape) prs.getSlides().get(0).getShapes().get(0);
IPortion portion = shape.getTextFrame()
.getParagraphs().get(0).getPortions().get(0);
// Bold, 18pt, dark-blue text
portion.getPortionFormat().setFontBold(NullableBool.TRUE);
portion.getPortionFormat().setFontHeight(18);
portion.getPortionFormat().getFillFormat()
.getSolidFillColor().setColor(new Color(0, 0, 139));
// Solid background fill on the shape
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor()
.setColor(new Color(240, 248, 255));
prs.save("formatted.pptx");
}
```java
import org.aspose.slides.foss.*;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation("output.pptx")) {
IAutoShape shape = (IAutoShape) prs.getSlides().get(0).getShapes().get(0);
IPortion portion = shape.getTextFrame()
.getParagraphs().get(0).getPortions().get(0);
// Bold, 18pt, dark-blue text
portion.getPortionFormat().setFontBold(NullableBool.TRUE);
portion.getPortionFormat().setFontHeight(18);
portion.getPortionFormat().getFillFormat()
.getSolidFillColor().setColor(new Color(0, 0, 139));
// Solid background fill on the shape
shape.getFillFormat().setFillType(FillType.SOLID);
shape.getFillFormat().getSolidFillColor()
.setColor(new Color(240, 248, 255));
prs.save("formatted.pptx");
}
Es una biblioteca gratuita, con licencia MIT, pure-Java para crear, leer y editar presentaciones .pptx de PowerPoint sin requerir Microsoft Office.
.pptx es el formato de lectura/escritura compatible. La exportación a PDF, HTML, SVG o imágenes no está disponible en esta edición.
No. Aspose.Slides FOSS es una biblioteca pure-Java sin dependencia de Microsoft Office, automatización COM, o cualquier tiempo de ejecución propietario.
Agregue la dependencia Maven org.aspose.slides.foss:aspose-slides-foss:1.0.0 a su proyecto. No se requieren paquetes del sistema adicionales ni extensiones nativas. Se requiere JDK 21 o posterior.
Sí. La biblioteca admite efectos de sombra externa, resplandor, desenfoque y reflexión en cualquier objeto de forma a través de la API EffectFormat.
Sí. Presentation implementa AutoCloseable, por lo que siempre debe usar try (Presentation prs = new Presentation()) { ... } para una limpieza de recursos fiable.
No. Las partes desconocidas de XML encontradas durante la carga se conservan literalmente al guardar, de modo que el contenido que la biblioteca aún no comprende nunca se pierde.
La biblioteca tiene licencia MIT y está alojada en GitHub. Se agradecen los informes de errores y las solicitudes de extracción.