Introdução

Aspose.Slides FOSS for .NET is now available on NuGet: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx arquivos totalmente em C#, sem dependência do Microsoft Office ou de qualquer runtime proprietário.

A biblioteca foi projetada para desenvolvedores que precisam gerar ou manipular arquivos de apresentação programaticamente: automatizar decks de slides a partir de dados, extrair texto e metadados de arquivos PPTX enviados, construir pipelines de relatórios baseados em apresentações ou incorporar a criação de apresentações em aplicações ASP.NET. Porque Aspose.Slides.Foss requer .NET 9.0 ou posterior, sendo implantado de forma idêntica no Windows, macOS, Linux e contêineres Docker.

Recursos Principais

  • Suporte completo de round-trip PPTX: Abra qualquer .pptx arquivo, modifique seu conteúdo e salve-o novamente sem perder partes XML desconhecidas que a biblioteca ainda não entende.
  • Gerenciamento de slides: Adicione, remova e itere slides usando prs.Slides; a apresentação começa com um slide em branco após new Presentation().
  • AutoShapes, Tabelas e Conectores: Insira formas via slide.Shapes.AddAutoShape(), dados tabulares via slide.Shapes.AddTable(), e conectores visuais entre formas via slide.Shapes.AddConnector().
  • Formatação de texto rico: Formate texto ao nível de caractere com PortionFormat: tamanho da fonte, negrito, itálico, sublinhado e cor ARGB via FillType.Solid e ColorFormat.
  • Tipos de preenchimento: Aplique FillType.Solid, Gradient, Pattern, ou Picture preenchimentos a qualquer forma.
  • Efeitos visuais: Sombra externa, brilho, borda suave, desfoque, reflexão e sombra interna via shape.EffectFormat.
  • 3D formatting: Bisel, câmera, rig de luz, material e profundidade de extrusão via shape.ThreeDFormat.
  • Notas do apresentador: Anexar texto de notas a cada slide via NotesSlideManager.AddNotesSlide().
  • Comentários em thread: Adicionar comentários com metadados do autor e posição do slide.
  • Imagens incorporadas: Incorporar a partir de caminho de arquivo, bytes ou Stream.
  • Propriedades do documento: Ler e gravar propriedades core, app e personalizadas.

Começando

Instale via NuGet. .NET 9.0 ou superior é necessário.

dotnet add package Aspose.Slides.Foss

Crie sua primeira apresentação com uma forma e salve-a:

using Aspose.Slides.Foss;

using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 400, 120);
shape.AddTextFrame("Hello from Aspose.Slides FOSS!");
prs.Save("hello.pptx", SaveFormat.Pptx);

Sempre usar Presentation dentro de um using bloco; isso garante que todos os recursos internos sejam liberados quando o bloco termina.

Exemplo de Formatação de Texto

using Aspose.Slides.Foss;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Bold heading in corporate blue");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 28;
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
prs.Save("formatted.pptx", SaveFormat.Pptx);

Limitações Atuais

As áreas a seguir levantam NotImplementedException nesta versão:

  • Gráficos, SmartArt e objetos OLE
  • Animações e transições de slides
  • Exportar para PDF, HTML, SVG ou formatos de imagem
  • Hipervínculos, configurações de ação, macros VBA e assinaturas digitais

Partes XML desconhecidas encontradas durante o carregamento são preservadas literalmente ao salvar, de modo que arquivos PPTX produzidos por outras ferramentas façam o ciclo de ida e volta com segurança.

Veja Também