SmartArt en presentaciones se utiliza para proporcionar la información en forma visual. A veces, se opta por hacer más atractivo el texto simple. Mientras que, en otros casos, se usa para demostrar diagramas de flujo, procesos, relaciones entre diferentes entidades, etc. En este artículo, aprenderá cómo crear SmartArt en presentaciones de PowerPoint mediante programación usando C#.

API .NET para crear SmartArt en PowerPoint

Para trabajar con SmartArt en presentaciones de PowerPoint, usaremos Aspose.Slides for .NET. Es una poderosa biblioteca de clases para crear y manipular presentaciones de PowerPoint y OpenOffice. Puede instalar la API a través de NuGet o descargar su DLL.

PM> Install-Package Aspose.Slides.NET

Cree una forma SmartArt en PowerPoint usando C#

Aspose.Slides for .NET proporciona la forma más fácil de crear formas SmartArt en las presentaciones. Para la demostración, vamos a crear una forma SmartArt desde cero en una presentación de PowerPoint usando C#.

El siguiente ejemplo de código muestra cómo crear una forma SmartArt en una presentación de PowerPoint.

// Crear una presentación o cargar una existente
using (Presentation pres = new Presentation())
{
    // Acceder a la diapositiva de presentación
    ISlide slide = pres.Slides[0];

    // Agregar forma SmartArt
    ISmartArt smart = slide.Shapes.AddSmartArt(0, 0, 400, 400, SmartArtLayoutType.BasicBlockList);
    smart.AllNodes[0].TextFrame.Text = "First Block";
    smart.AllNodes[1].TextFrame.Text = "Second Block";
    
    // Guardar presentación
    pres.Save("SimpleSmartArt_out.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
}

La siguiente captura de pantalla muestra el resultado del ejemplo de código anterior.

Crear SmartArt en PowerPoint C#

Acceda a una forma SmartArt en PowerPoint usando C#

También puede acceder a las formas SmartArt en las presentaciones de PowerPoint existentes. Una vez accedidos, puede modificarlos según sus necesidades. Los siguientes son los pasos para acceder a las formas SmartArt en presentaciones de PowerPoint usando C#.

  • Cree una nueva presentación o cargue una existente usando la clase Presentation.
  • Obtenga la referencia de la diapositiva deseada en un objeto ISlide.
  • Recorra las formas en la diapositiva usando la colección ISlide.Shapes.
  • Si la forma es del tipo ISmartArt, obtenga su referencia en un objeto ISmartArt.
  • Si es necesario, filtre las formas SmartArt de un diseño específico utilizando la propiedad ISmartArt.Layout.

El siguiente ejemplo de código muestra cómo acceder a formas SmartArt en presentaciones de PowerPoint.

// Cargar la presentación
using (Presentation pres = new Presentation("AccessSmartArtShape.pptx"))
{
    // Iterar a través de cada forma dentro de la diapositiva deseada
    foreach (IShape shape in pres.Slides[0].Shapes)
    {
        // Comprobar si la forma es de tipo SmartArt
        if (shape is ISmartArt)
        {
            // Tipo de forma en SmartArt
            ISmartArt smart = (ISmartArt)shape;
            System.Console.WriteLine("Shape Name:" + smart.Name);
            
            // Comprobación del diseño de SmartArt
            //if (inteligente.Layout == SmartArtLayoutType.BasicBlockList)
            //{
            //   Console.WriteLine("Haz algo aquí...");
            //}
        }
    }
}

Cambiar el estilo de la forma SmartArt usando C#

Una vez que haya accedido a una forma SmartArt, también puede cambiar su estilo. Los siguientes pasos demuestran cómo cambiar el estilo de las formas SmartArt en una presentación de PowerPoint usando C#.

El siguiente ejemplo de código muestra cómo cambiar el estilo de las formas SmartArt en las presentaciones de PowerPoint.

// Cargar presentación
using (Presentation presentation = new Presentation("AccessSmartArtShape.pptx"))
{
    // Atraviesa todas las formas dentro de la primera diapositiva
    foreach (IShape shape in presentation.Slides[0].Shapes)
    {
        // Comprobar si la forma es de tipo SmartArt
        if (shape is ISmartArt)
        {
            // Tipo de forma en SmartArt
            ISmartArt smart = (ISmartArt)shape;

            // Comprobar estilo SmartArt
            if (smart.QuickStyle == SmartArtQuickStyleType.SimpleFill)
            {
                // Cambiar el estilo de SmartArt
                smart.QuickStyle = SmartArtQuickStyleType.Cartoon;
            }
            
            // Comprobar el tipo de color de SmartArt
            if (smart.ColorStyle == SmartArtColorType.ColoredFillAccent1)
            {
                // Cambiar el tipo de color de SmartArt
                smart.ColorStyle = SmartArtColorType.ColorfulAccentColors;
            }
        }
    }

    // Guardar presentación
    presentation.Save("ChangeSmartArtStyle_out.pptx", SaveFormat.Pptx);
}

Obtenga una licencia de API gratuita

Obtenga una licencia temporal gratuita para usar Aspose.Slides for .NET sin limitaciones de evaluación.

Conclusión

En este artículo, ha aprendido a crear SmartArt en presentaciones de PowerPoint usando C#. Además, ha visto cómo acceder a las formas SmartArt y cambiar sus estilos mediante programación. Puede explorar la documentación para obtener más información sobre Aspose.Slides for .NET. Además, puede hacer sus preguntas a través de nuestro foro.

Ver también