SmartArt v prezentacích se používá k poskytování informací ve vizuální podobě. Někdy je zvoleno, aby byl jednoduchý text atraktivnější. Zatímco v jiných případech se používá k demonstraci vývojových diagramů, procesů, vztahů mezi různými entitami atd. V tomto článku se dozvíte, jak vytvořit SmartArt v prezentacích PowerPoint programově v C#.

C# .NET API pro vytváření SmartArt v PowerPoint PPT

Pro práci s obrázky SmartArt v prezentacích PowerPoint použijeme Aspose.Slides for .NET. Je to výkonná knihovna tříd pro vytváření a manipulaci s prezentacemi PowerPoint a OpenOffice. API můžete nainstalovat buď přes NuGet nebo stáhnout jeho DLL.

PM> Install-Package Aspose.Slides.NET

Vytvoření tvaru SmartArt v PowerPointu PPT v C#

Aspose.Slides for .NET poskytuje nejjednodušší způsob, jak vytvořit tvary SmartArt v prezentacích. Pro demonstraci vytvoříme zcela od začátku tvar SmartArt v prezentaci PowerPoint pomocí C#.

Následující ukázka kódu ukazuje, jak vytvořit obrazec SmartArt v PowerPointu PPT v C#.

// Vytvořte prezentaci nebo načtěte existující
using (Presentation pres = new Presentation())
{
    // Otevřete snímek prezentace
    ISlide slide = pres.Slides[0];

    // Přidejte tvar 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";
    
    // Uložit prezentaci
    pres.Save("SimpleSmartArt_out.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
}

Následující snímek obrazovky ukazuje výstup výše uvedeného ukázkového kódu.

Vytvořte SmartArt v PowerPointu C#

Přístup k tvaru SmartArt v PowerPointu pomocí C#

K tvarům SmartArt můžete přistupovat také ve stávajících prezentacích PowerPoint. Jakmile k nim přistoupíte, můžete je upravit podle potřeby. Následují kroky pro přístup k obrazcům SmartArt v prezentacích PowerPoint pomocí C#.

  • Vytvořte novou prezentaci nebo načtěte existující pomocí třídy Presentation.
  • Získejte odkaz na požadovaný snímek do objektu ISlide.
  • Procházejte tvary na snímku pomocí kolekce ISlide.Shapes.
  • Pokud je tvar typu ISmartArt, získejte jeho odkaz do objektu ISmartArt.
  • V případě potřeby filtrujte tvary obrázků SmartArt konkrétního rozvržení pomocí vlastnosti ISmartArt.Layout.

Následující ukázka kódu ukazuje, jak získat přístup k tvarům SmartArt v PPT v C#.

// Načtěte prezentaci
using (Presentation pres = new Presentation("AccessSmartArtShape.pptx"))
{
    // Iterujte každý tvar uvnitř požadovaného snímku
    foreach (IShape shape in pres.Slides[0].Shapes)
    {
        // Zkontrolujte, zda je tvar typu SmartArt
        if (shape is ISmartArt)
        {
            // Typ přetypování tvaru na SmartArt
            ISmartArt smart = (ISmartArt)shape;
            System.Console.WriteLine("Shape Name:" + smart.Name);
            
            // Kontrola rozvržení SmartArt
            //if (smart.Layout == SmartArtLayoutType.BasicBlockList)
            //{
            //   Console.WriteLine("Udělejte něco tady...");
            //}
        }
    }
}

Změňte styl tvaru SmartArt v PowerPointu

Jakmile získáte přístup k tvaru SmartArt, můžete změnit také jeho styl. Následující kroky ukazují, jak změnit styl obrazců SmartArt v PowerPoint PPT pomocí C#.

Následující ukázka kódu ukazuje, jak změnit styl obrazců SmartArt v prezentacích PowerPoint.

// Načíst prezentaci
using (Presentation presentation = new Presentation("AccessSmartArtShape.pptx"))
{
    // Projděte každý tvar uvnitř prvního snímku
    foreach (IShape shape in presentation.Slides[0].Shapes)
    {
        // Zkontrolujte, zda je tvar typu SmartArt
        if (shape is ISmartArt)
        {
            // Typ přetypování tvaru na SmartArt
            ISmartArt smart = (ISmartArt)shape;

            // Zkontrolujte styl SmartArt
            if (smart.QuickStyle == SmartArtQuickStyleType.SimpleFill)
            {
                // Změnit styl SmartArt
                smart.QuickStyle = SmartArtQuickStyleType.Cartoon;
            }
            
            // Zkontrolujte typ barvy SmartArt
            if (smart.ColorStyle == SmartArtColorType.ColoredFillAccent1)
            {
                // Změňte typ barvy SmartArt
                smart.ColorStyle = SmartArtColorType.ColorfulAccentColors;
            }
        }
    }

    // Uložit prezentaci
    presentation.Save("ChangeSmartArtStyle_out.pptx", SaveFormat.Pptx);
}

C# PowerPoint API – Získejte bezplatnou licenci

Získejte bezplatnou dočasnou licenci a pracujte s PowerPoint SmartArt bez omezení hodnocení.

Závěr

V tomto článku jste se naučili, jak vytvořit SmartArt v prezentacích PowerPoint pomocí C#. Navíc jste viděli, jak přistupovat k tvarům SmartArt a programově měnit jejich styly. Chcete-li se dozvědět více o Aspose.Slides for .NET, můžete prozkoumat dokumentaci. Kromě toho se můžete ptát na naše fórum.

Viz také