Kształty to doskonały sposób na uczynienie prezentacji programu PowerPoint bardziej szczegółowymi i atrakcyjnymi. PowerPoint udostępnia szeroką gamę kształtów, które można dodawać do slajdów prezentacji, np. elipsy, linie, prostokąty, łączniki i tak dalej. Aby zautomatyzować tę funkcję, w tym artykule omówiono programowe dodawanie, klonowanie i usuwanie kształtów na slajdach programu PowerPoint przy użyciu języka C#.
- Interfejs API języka C# do pracy z kształtami programu PowerPoint
- Rodzaje kształtów programu PowerPoint
- Dodaj kształt do slajdów programu PowerPoint
- Dodaj Łącznik do Kształtów w Prezentacjach PowerPoint
- Sklonuj kształt w slajdach programu PowerPoint
- Usuń kształty ze slajdów programu PowerPoint
Interfejs API języka C# do pracy z kształtami programu PowerPoint
Aspose.Slides for .NET to C# API, które zostało zaprojektowane do pracy z prezentacjami PowerPoint z poziomu aplikacji .NET. Wraz z innymi funkcjami manipulacji prezentacją, interfejs API zapewnia łatwe sposoby pracy z kształtami na slajdach programu PowerPoint. Możesz pobrać API DLL lub zainstalować je przez NuGet.
Install-Package Aspose.Slides.NET
Kształty PowerPointa
Aspose.Slides dla platformy .NET obsługuje szeroką gamę typów kształtów, które można dodawać do slajdów programu PowerPoint. Do najczęściej używanych kształtów należą:
Dodaj kształt do slajdów programu PowerPoint za pomocą języka C#
W celu dodania kształtu np. elipsy, linii, prostokąta itp. Aspose.Slides udostępnia metodę IShapeCollection.AddAutoShape(ShapeType, Single, Single, Single, Single). Wyliczenie ShapeType pozwala określić typ kształtu, który chcesz dodać. Poniżej przedstawiono kroki, aby dodać kształt do slajdu programu PowerPoint.
- Utwórz instancję klasy Presentation, aby utworzyć nową prezentację lub załadować istniejącą.
- Uzyskaj odniesienie do slajdu za pomocą Presentation.Slides[index] do obiektu ISlide.
- Dodaj elipsę (lub dowolny inny kształt) za pomocą metody IShapeCollection.AddAutoShape(ShapeType, Single, Single, Single, Single) ujawnionej przez obiekt IShapes.
- Zapisz plik PPTX przy użyciu metody Presentation.Save(String, SaveFormat).
Poniższy przykładowy kod pokazuje, jak dodać kształt do slajdu programu PowerPoint przy użyciu języka C#.
// Utwórz wystąpienie obiektu Presentation reprezentującego plik prezentacji
using (Presentation pres = new Presentation("presentation.pptx"))
{
// Pobierz pierwszy slajd
ISlide sld = pres.Slides[0];
// Dodaj autokształt typu elipsa
sld.Shapes.AddAutoShape(ShapeType.Ellipse, 50, 150, 150, 50);
// Zapisz prezentację
pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}
Dodaj złącze, aby połączyć kształty programu PowerPoint w języku C#
Łącznik to linia, która służy do łączenia kształtów w celu ich połączenia. Łącznik może być linią prostą lub zakrzywioną. Zobaczmy, jak dodać łącznik między dwoma kształtami na slajdzie programu PowerPoint.
- Utwórz instancję klasy Presentation, aby utworzyć nową prezentację.
- Uzyskaj odniesienie do slajdu za pomocą Presentation.Slides[index] do obiektu ISlide.
- Dodaj dwa kształty, tak jak w poprzednim przykładzie, i uzyskaj ich odniesienia w obiektach IAutoShape.
- Utwórz nowy obiekt IConnector przy użyciu metody IShapeCollection.AddConnector(ShapeType, Single, Single, Single, Single).
- Połącz kształty za pomocą właściwości IConnector.StartShapeConnectedTo i IConnector.EndShapeConnectedTo.
- Wywołaj metodę IConnector.Reroute(), aby utworzyć najkrótszą automatyczną ścieżkę połączenia.
- Zapisz plik PPTX przy użyciu metody Presentation.Save(String, SaveFormat).
Poniższy przykładowy kod pokazuje, jak łączyć kształty na slajdzie programu PowerPoint przy użyciu języka C#.
// Utwórz wystąpienie obiektu Presentation reprezentującego plik prezentacji
using (Presentation pres = new Presentation("presentation.pptx"))
{
// Dostęp do kolekcji kształtów dla wybranego slajdu
IShapeCollection shapes = pres.Slides[0].Shapes;
// Dodaj automatyczny kształt Elipsy
IAutoShape ellipse = shapes.AddAutoShape(ShapeType.Ellipse, 0, 100, 100, 100);
// Dodaj autokształt prostokąta
IAutoShape rectangle = shapes.AddAutoShape(ShapeType.Rectangle, 100, 300, 100, 100);
// Dodanie kształtu złącza do kolekcji kształtów slajdów
IConnector connector = shapes.AddConnector(ShapeType.BentConnector2, 0, 0, 10, 10);
// Łączenie kształtów ze złączami
connector.StartShapeConnectedTo = ellipse;
connector.EndShapeConnectedTo = rectangle;
// Wywołaj przekierowanie, aby ustawić automatyczną najkrótszą ścieżkę między kształtami
connector.Reroute();
// Zapisz prezentację
pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}
Klonowanie kształtów w slajdach programu PowerPoint przy użyciu języka C#
Możesz także klonować kształty z jednego slajdu PowerPoint do drugiego, używając Aspose.Slides for .NET. Poniżej przedstawiono kroki, aby wykonać tę operację.
- Utwórz instancję klasy Presentation.
- Uzyskaj odniesienie do slajdu za pomocą Presentation.Slides[index] do obiektu ISlide.
- Uzyskaj dostęp do źródłowych kształtów slajdów za pomocą kolekcji ISlide.Shapes.
- Uzyskaj dostęp do docelowych kształtów slajdów za pomocą kolekcji ISlide.Shapes.
- Klonuj kształty ze źródłowej kolekcji kształtów slajdów do slajdu docelowego za pomocą metody IShapeCollection.AddClone(ISlide).
- Zapisz zaktualizowany plik prezentacji.
Poniższy przykładowy kod pokazuje, jak klonować kształty w slajdach programu PowerPoint przy użyciu języka C#.
// Utwórz wystąpienie obiektu Presentation reprezentującego plik prezentacji
using (Presentation pres = new Presentation("presentation.pptx"))
{
// Uzyskaj kolekcję kształtów ze slajdu źródłowego
IShapeCollection sourceShapes = pres.Slides[0].Shapes;
ILayoutSlide blankLayout = pres.Masters[0].LayoutSlides.GetByType(SlideLayoutType.Blank);
ISlide destSlide = pres.Slides.AddEmptySlide(blankLayout);
// Pobierz kolekcję kształtów ze slajdu docelowego
IShapeCollection destShapes = destSlide.Shapes;
destShapes.AddClone(sourceShapes[1], 50, 150 + sourceShapes[0].Height);
destShapes.AddClone(sourceShapes[2]);
// Kształt klonu
destShapes.InsertClone(0, sourceShapes[0], 50, 150);
// Zapisz prezentację
pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}
Usuń kształty ze slajdów programu PowerPoint za pomocą języka C#
Poniżej przedstawiono kroki, aby usunąć kształty ze slajdu programu PowerPoint.
- Utwórz instancję klasy Presentation, aby załadować plik PPTX.
- Uzyskaj dostęp do żądanego slajdu z Presentation.Slides[index] do obiektu ISlide.
- Znajdź kształt z określonym IShape.AlternativeText.
- Usuń kształt metodą ISlide.Shapes.Remove(IShape).
- Zapisz zaktualizowany plik prezentacji.
Poniższy przykładowy kod pokazuje, jak usunąć kształty ze slajdu programu PowerPoint przy użyciu języka C#.
// Utwórz wystąpienie obiektu Presentation reprezentującego plik prezentacji
using (Presentation pres = new Presentation("presentation.pptx"))
{
// Pobierz pierwszy slajd
ISlide sld = pres.Slides[0];
// Dodaj autokształt typu prostokąt
IShape shp1 = sld.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 40, 150, 50);
IShape shp2 = sld.Shapes.AddAutoShape(ShapeType.Moon, 160, 40, 150, 50);
String alttext = "User Defined";
int iCount = sld.Shapes.Count;
for (int i = 0; i < iCount; i++)
{
// Odzyskaj kształt
AutoShape ashp = (AutoShape)sld.Shapes[0];
if (String.Compare(ashp.AlternativeText, alttext, StringComparison.Ordinal) == 0)
{
// Usuń kształt
sld.Shapes.Remove(ashp);
}
}
// Zapisz prezentację
pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}
Wniosek
MS PowerPoint umożliwia korzystanie z różnych typów kształtów, aby Twoje slajdy były bardziej rozbudowane. Możesz użyć elips, prostokątów, linii itp., aby narysować swoje kształty i złącza, aby je połączyć. Za pomocą kroków i przykładów kodu w tym artykule opisano, jak programowo dodawać, klonować i usuwać kształty na slajdach programu PowerPoint przy użyciu języka C#. Jeśli chcesz dowiedzieć się więcej o interfejsie API, odwiedź dokumentację.