Program Microsoft PowerPoint zapewnia możliwość dodawania kształtów do prezentacji. Kształty mogą być pomocne w scenariuszach, takich jak pokazywanie przepływu danych lub przedstawianie różnych faz procesu. Możesz używać kształtów takich jak elipsy, linie, prostokąty itp. i łączyć je za pomocą łączników. Możesz znaleźć się w scenariuszach, w których musisz programowo dodawać kształty do slajdów programu PowerPoint. W tym celu w tym artykule dowiesz się, jak pracować z kształtami w prezentacjach programu PowerPoint przy użyciu języka C++.
- C++ API do pracy z kształtami w prezentacjach programu PowerPoint
- Dodaj kształt do slajdu programu PowerPoint
- Dodaj połączone kształty do slajdu programu PowerPoint
- Klonuj kształty w slajdach programu PowerPoint
- Usuń kształty ze slajdów programu PowerPoint przy użyciu języka C++
- Obsługiwane kształty programu PowerPoint
- Uzyskaj bezpłatną licencję
C++ API do pracy z kształtami w prezentacjach programu PowerPoint
Aspose.Slides for C++ to natywna biblioteka C++, która obsługuje tworzenie, odczytywanie i manipulowanie plikami PowerPoint. Interfejs API obsługuje również pracę z kształtami w prezentacjach programu PowerPoint. Możesz zainstalować API poprzez NuGet lub pobrać bezpośrednio z sekcji Downloads.
PM> Install-Package Aspose.Slides.Cpp
Dodaj kształt do slajdu programu PowerPoint
Aby dodać kształt, użyj metody ISlide->getShapes()->AddAutoShape() udostępnianej przez API. Poniżej przedstawiono kroki, aby dodać kształt do slajdu programu PowerPoint.
- Najpierw załaduj prezentację PowerPoint za pomocą klasy Presentation.
- Pobierz slajd, do którego chcesz dodać kształt, używając metody Presentation->getSlides()->idxget (indeks int32t).
- Dodaj kształt za pomocą metody ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height).
- Na koniec zapisz prezentację za pomocą metody Presentation->Save (System::String name, Export::SaveFormat).
Poniżej znajduje się przykładowy kod służący do dodawania kształtu do slajdu programu PowerPoint przy użyciu języka C++.
// Ścieżki plików
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";
// Załaduj plik prezentacji
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Pobierz pierwszy slajd
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Dodaj kształt
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// Zapisz plik prezentacji
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Dodaj połączone kształty do slajdu programu PowerPoint
Łączników można używać do łączenia kształtów. W celu utworzenia konektora można skorzystać z metody ISlide->getShapes()->AddConnector(). Poniżej przedstawiono kroki dodawania połączonych kształtów do slajdu programu PowerPoint.
- Najpierw załaduj prezentację PowerPoint za pomocą klasy Presentation.
- Pobierz slajd, do którego chcesz dodać kształty, używając metody Presentation->getSlides()->idxget (indeks int32t).
- Dodaj kształty za pomocą metody ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height).
- Dodaj łącznik za pomocą metody ISlide->getShapes()->AddConnector (ShapeType shapeType, float x, float y, float width, float height).
- Połącz kształty ze złączem za pomocą IConnector->setStartShapeConnectedTo (System::SharedPtr wartość) i IConnector->setEndShapeConnectedTo (System::SharedPtr wartość) metody.
- Wywołaj metodę IConnector->Reroute(), aby utworzyć najkrótszą automatyczną ścieżkę połączenia.
- Na koniec zapisz prezentację za pomocą metody Presentation->Save (System::String name, Export::SaveFormat).
Poniżej znajduje się przykładowy kod służący do dodawania połączonych kształtów do slajdu programu PowerPoint przy użyciu języka C++.
// Ścieżki plików
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";
// Załaduj plik prezentacji
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Pobierz pierwszy slajd
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Dodaj pierwszy kształt
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// Dodaj drugi kształt
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);
// Dodaj złącze
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);
// Połącz kształty łącznikiem
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);
// Wywołaj przekierowanie, aby ustawić automatyczną najkrótszą ścieżkę między kształtami
connector->Reroute();
// Zapisz plik prezentacji
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Klonuj kształty w slajdach programu PowerPoint
Możesz także klonować istniejące kształty przy użyciu interfejsu API Aspose.Slides for C++. Aby sklonować kształt, użyj metody ShapeCollection->InsertClone() udostępnianej przez API. Poniżej przedstawiono kroki klonowania kształtów z jednego slajdu do drugiego.
- Najpierw załaduj prezentację PowerPoint za pomocą klasy Presentation.
- Pobierz slajd źródłowy za pomocą metody Presentation->getSlides()->idxget (indeks int32t).
- Uzyskaj dostęp do kształtów slajdu źródłowego za pomocą metody ISlide->getShapes().
- Uzyskaj dostęp do kształtów slajdu docelowego za pomocą metody ISlide->getShapes().
- Sklonuj kształt za pomocą [IShapeCollection->InsertClone (indeks int32t, System::SharedPtr sourceShape, float x, float y) 23 metoda.
- Na koniec zapisz prezentację za pomocą metody Presentation->Save (System::String name, Export::SaveFormat format).
Poniżej znajduje się przykładowy kod służący do klonowania kształtów na slajdach programu PowerPoint przy użyciu języka C++.
// Ścieżki plików
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";
// Załaduj plik prezentacji
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Uzyskaj dostęp do pierwszego slajdu
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Dostęp do kolekcji kształtów dla wybranego slajdu
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();
// Pobierz kolekcję kształtów ze slajdu docelowego
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();
// Kształt klonu
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);
// Zapisz plik prezentacji
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Usuń kształty ze slajdów programu PowerPoint przy użyciu języka C++
Poniżej przedstawiono kroki, aby usunąć kształty ze slajdów programu PowerPoint.
- Najpierw załaduj prezentację PowerPoint za pomocą klasy Presentation.
- Pobierz slajd, z którego chcesz usunąć kształt, używając metody Presentation->getSlides()->idxget (indeks int32t).
- Znajdź wymagany kształt, dopasowując tekst alternatywny za pomocą metody IShape->getAlternativeText().
- Usuń kształt za pomocą ISlide->getShapes()->Remove (System::SharedPtr kształt) metoda.
- Na koniec zapisz prezentację za pomocą metody Presentation->Save (System::String name, Export::SaveFormat format).
Poniżej znajduje się przykładowy kod do usuwania kształtów ze slajdów programu PowerPoint przy użyciu języka C++.
// Ścieżki plików
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";
// Załaduj plik prezentacji
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Uzyskaj dostęp do pierwszego slajdu
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
String alttext = u"User Defined";
int iCount = slide->get_Shapes()->get_Count();
for (int i = 0; i < iCount; i++)
{
// Uzyskaj dostęp do kształtu
SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));
if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
{
// Usuń kształt
slide->get_Shapes()->Remove(ashape);
}
}
// Zapisz plik prezentacji
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Obsługiwane kształty programu PowerPoint
Aspose.Slides for C++ obsługuje wiele kształtów, z którymi możesz pracować. Poniżej znajduje się lista niektórych obsługiwanych kształtów.
Możesz wyświetlić pełną listę obsługiwanych kształtów, przeglądając wartości wyliczeniowe ShapeType.
Uzyskaj bezpłatną licencję
Możesz poprosić o darmową tymczasową licencję, aby wypróbować interfejs API bez ograniczeń ewaluacyjnych.
Wniosek
W tym artykule nauczyłeś się, jak pracować z kształtami w prezentacjach PowerPoint przy użyciu języka C++. W szczególności nauczyłeś się dodawać, klonować i usuwać kształty ze slajdów programu PowerPoint. Ponadto widziałeś, jak łączyć kształty za pomocą łącznika. Oprócz pracy z kształtami Aspose.Slides for C++ zapewnia wiele dodatkowych funkcji ulepszających prezentacje PowerPoint. Możesz szczegółowo zapoznać się z interfejsem API, odwiedzając oficjalną dokumentację. W przypadku jakichkolwiek pytań prosimy o kontakt na naszym bezpłatnym forum pomocy technicznej.