Introducción

Aspose.Slides FOSS para .NET ya está disponible en NuGet: una biblioteca gratuita, con licencia MIT, para crear, leer y editar archivos PowerPoint .pptx completamente en C#, sin dependencia de Microsoft Office ni de ningún runtime propietario.

La biblioteca está diseñada para desarrolladores que necesitan generar o manipular archivos de presentación de forma programática: automatizar presentaciones a partir de datos, extraer texto y metadatos de archivos PPTX cargados, construir pipelines de informes basados en presentaciones o incrustar la creación de presentaciones en aplicaciones ASP.NET. Debido a que Aspose.Slides.Foss requiere .NET 9.0 o posterior, se despliega idénticamente en Windows, macOS, Linux y contenedores Docker.

Características clave

  • Compatibilidad completa de ida y vuelta con PPTX: Abra cualquier archivo .pptx, modifique su contenido y guárdelo nuevamente sin perder las partes XML desconocidas que la biblioteca aún no comprende.
  • Gestión de diapositivas: Añada, elimine e itere diapositivas usando prs.Slides; la presentación comienza con una diapositiva en blanco después de new Presentation().
  • AutoShapes, tablas y conectores: Inserte formas mediante slide.Shapes.AddAutoShape(), datos tabulares mediante slide.Shapes.AddTable() y conectores visuales entre formas mediante slide.Shapes.AddConnector().
  • Formato de texto enriquecido: Formatee texto a nivel de carácter con PortionFormat: tamaño de fuente, negrita, cursiva, subrayado y color ARGB mediante FillType.Solid y ColorFormat.
  • Tipos de relleno: Aplique rellenos FillType.Solid, Gradient, Pattern o Picture a cualquier forma.
  • Efectos visuales: Sombra externa, resplandor, borde suave, desenfoque, reflejo y sombra interna mediante shape.EffectFormat.
  • Formato 3D: Bisel, cámara, conjunto de luces, material y profundidad de extrusión mediante shape.ThreeDFormat.
  • Notas del presentador: Adjunte texto de notas a cada diapositiva mediante NotesSlideManager.AddNotesSlide().
  • Comentarios en hilo: Añada comentarios con metadatos del autor y posición en la diapositiva.
  • Imágenes incrustadas: Incruste desde ruta de archivo, bytes o Stream.
  • Propiedades del documento: Lea y escriba propiedades básicas, de aplicación y personalizadas.

Comenzando

Instale desde NuGet. Se requiere .NET 9.0 o posterior.

dotnet add package Aspose.Slides.Foss

Crea tu primera presentación con una forma y guárdala:

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

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);

Siempre use Presentation dentro de un using bloque; esto asegura que todos los recursos internos se liberen cuando el bloque finaliza.

Ejemplo de Formateo de Texto

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;

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);

Limitaciones actuales

Las siguientes áreas no son compatibles con esta versión:

  • Gráficos, SmartArt y objetos OLE
  • Animaciones y transiciones de diapositivas
  • Exportar a PDF, HTML, SVG o formatos de imagen
  • Hipervínculos, configuraciones de acción, macros VBA y firmas digitales

Las partes XML desconocidas encontradas durante la carga se conservan literalmente al guardar, por lo que los archivos PPTX producidos por otras herramientas pueden volver a procesarse de forma segura.

Ver también