Introducción
Aspose.Slides FOSS for .NET is now available on NuGet: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx archivos 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, crear pipelines de informes basados en presentaciones, o incrustar la creación de presentaciones en aplicaciones ASP.NET. Porque 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: Abrir cualquier
.pptxarchivo, modificar su contenido y guardarlo de nuevo sin perder partes XML desconocidas que la biblioteca aún no comprende. - Gestión de diapositivas: Añadir, eliminar e iterar diapositivas usando
prs.Slides; la presentación comienza con una diapositiva en blanco después denew Presentation(). - AutoShapes, Tablas y Conectores: Insertar formas mediante
slide.Shapes.AddAutoShape(), datos tabulares a través deslide.Shapes.AddTable(), y conectores visuales entre formas a través deslide.Shapes.AddConnector(). - Formato de texto enriquecido: Formatear texto a nivel de carácter con
PortionFormat: tamaño de fuente, negrita, cursiva, subrayado y color ARGB a través deFillType.SolidyColorFormat. - Tipos de relleno: Aplicar
FillType.Solid,Gradient,Pattern, oPicturerellenos a cualquier forma. - Efectos visuales: Sombra externa, resplandor, borde suave, desenfoque, reflejo y sombra interna mediante
shape.EffectFormat. - 3D formatting: Bisel, cámara, equipo de iluminación, material y profundidad de extrusión mediante
shape.ThreeDFormat. - Notas del presentador: Adjuntar texto de notas a cada diapositiva mediante
NotesSlideManager.AddNotesSlide(). - Comentarios en hilos: Agregar comentarios con metadatos del autor y posición de la diapositiva.
- Imágenes incrustadas: Incrustar desde ruta de archivo, bytes o
Stream. - Propiedades del documento: Leer y escribir propiedades principales, de la aplicación y personalizadas.
Comenzando
Instale desde NuGet. Se requiere .NET 9.0 o posterior.
dotnet add package Aspose.Slides.Foss
Cree su primera presentación con una forma y guárdela:
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);
Usar siempre Presentation dentro de un using bloque; esto asegura que todos los recursos internos se liberen cuando el bloque finaliza.
Ejemplo de formato 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);
Limitaciones actuales
Las siguientes áreas generan NotImplementedException en 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 cargarse de forma segura.