Aspose.Slides FOSS para Java é uma biblioteca pure-Java licenciada sob MIT para trabalhar com arquivos .pptx do PowerPoint. Adicione uma única dependência Maven e comece imediatamente a criar, ler e editar apresentações sem instalar o Microsoft Office ou qualquer runtime proprietário.
A biblioteca expõe uma API de Apresentação construída em torno de Presentation, Slide, Shape, TextFrame, Paragraph e Portion, o modelo conceitual usado pelo próprio PowerPoint. Adicione e remova slides, insira AutoShapes, Tabelas e Conectores, formate texto ao nível de caractere com negrito, itálico, tamanho e cor da fonte, aplique preenchimentos sólidos ou em gradiente e adicione efeitos visuais (sombra, brilho, desfoque, reflexão).
A classe Presentation implementa AutoCloseable, portanto use try-with-resources para limpeza confiável. Partes desconhecidas de XML encontradas durante o carregamento são preservadas literalmente ao salvar, de modo que o round-tripping nunca destrói conteúdo que a biblioteca ainda não entende. Para recursos adicionais e suporte, veja Aspose.Slides for Java enterprise edition.
.pptx existentes via new Presentation() ou new Presentation(path).SlideCollection com addClone(), addEmptySlide(), remove() e removeAt().ShapeType geometrias via addAutoShape().addConnector().NotesSlideManager.getSlideComments().Portion via getPortionFormat().getFillFormat() e FillType.getEffectFormat().getParagraphFormat().setAlignment().Aspose.Slides FOSS instala com uma única dependência Maven (org.aspose.slides.foss:aspose-slides-foss). A biblioteca é pura Java sem extensões nativas para compilar e sem pacotes de sistema para instalar.
A API espelha o próprio modelo de objetos do PowerPoint (Presentation, Slide, Shape, TextFrame, Paragraph, Portion), de modo que qualquer pessoa familiarizada com o modelo de objetos do PowerPoint pode usar a biblioteca imediatamente. É licenciada sob MIT, de código aberto no GitHub, e requer JDK 21 ou posterior.
Use try-with-resources para garantir que o Presentation seja sempre fechado e os recursos sejam liberados. addAutoShape() recebe um enum ShapeType, depois a posição x/y e a largura/altura em pontos. Chame addTextFrame() para criar a moldura de texto e definir o texto inicial em uma única chamada — não chame getTextFrame() antes de addTextFrame() pois a moldura é nula até ser criada.
<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>
A formatação de texto funciona no nível Portion — a menor unidade de uma sequência de caracteres. Abra o arquivo salvo, navegue até a primeira parte do primeiro parágrafo e defina as propriedades da fonte via getters e setters. O preenchimento da forma é independente: defina FillType para SOLID e atribua uma cor via 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");
}
É uma biblioteca pure-Java gratuita, licenciada sob MIT, para criar, ler e editar apresentações .pptx do PowerPoint sem exigir o Microsoft Office.
.pptx é o formato de leitura/gravação suportado. A exportação para PDF, HTML, SVG ou imagens não está disponível nesta edição.
Não. Aspose.Slides FOSS é uma biblioteca pura-Java sem dependência do Microsoft Office, automação COM ou qualquer runtime proprietário.
Adicione a dependência Maven org.aspose.slides.foss:aspose-slides-foss:1.0.0 ao seu projeto. Nenhum pacote de sistema adicional ou extensões nativas são necessários. JDK 21 ou superior é necessário.
Sim. A biblioteca suporta sombra externa, brilho, desfoque e efeitos de reflexão em qualquer objeto de forma via a API EffectFormat.
Sim. Presentation implementa AutoCloseable, portanto sempre use try (Presentation prs = new Presentation()) { ... } para uma limpeza confiável de recursos.
Não. Partes desconhecidas de XML encontradas durante o carregamento são preservadas literalmente ao salvar, de modo que o conteúdo que a biblioteca ainda não entende nunca é perdido.
A biblioteca tem licença MIT e está hospedada no GitHub. Relatórios de bugs e pull requests são bem‑vindos.