Arbeiten mit Formen in PowerPoint Präsentationen mit C++

Microsoft PowerPoint bietet Ihnen die Möglichkeit, Ihren Präsentationen Formen hinzuzufügen. Shapes können in Szenarien hilfreich sein, z. B. um den Datenfluss oder verschiedene Phasen eines Prozesses anzuzeigen. Sie können Formen wie Ellipsen, Linien, Rechtecke usw. verwenden und diese mit Verbindern verbinden. Möglicherweise befinden Sie sich in Szenarien, in denen Sie PowerPoint-Folien programmgesteuert Formen hinzufügen müssen. Zu diesem Zweck lernen Sie in diesem Artikel, wie Sie mit Formen in PowerPoint Präsentationen mit C++ arbeiten.

C++-API zum Arbeiten mit Formen in PowerPoint Präsentationen

Aspose.Slides for C++ ist eine native C++ Bibliothek, die das Erstellen, Lesen und Bearbeiten von PowerPoint Dateien unterstützt. Die API unterstützt auch das Arbeiten mit Formen in PowerPoint Präsentationen. Sie können die API entweder über NuGet installieren oder direkt aus dem Abschnitt Downloads herunterladen.

PM> Install-Package Aspose.Slides.Cpp

Fügen Sie einer PowerPoint-Folie eine Form hinzu

Verwenden Sie zum Hinzufügen einer Form die von der API bereitgestellte Methode ISlide->getShapes()->AddAutoShape(). Im Folgenden finden Sie die Schritte zum Hinzufügen einer Form zu einer PowerPoint-Folie.

Im Folgenden finden Sie den Beispielcode zum Hinzufügen einer Form zu einer PowerPoint-Folie mit C++.

// Dateipfade
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";

// Laden Sie die Präsentationsdatei
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Holen Sie sich die erste Folie
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Fügen Sie die Form hinzu
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// Präsentationsdatei speichern
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Form zu PowerPoint-Folie hinzufügen

Fügen Sie einer PowerPoint-Folie verbundene Shapes hinzu

Konnektoren können verwendet werden, um Shapes zu verbinden. Um einen Konnektor zu erstellen, können Sie die Methode ISlide->getShapes()->AddConnector() verwenden. Im Folgenden finden Sie die Schritte zum Hinzufügen verbundener Formen zu einer PowerPoint-Folie.

Im Folgenden finden Sie den Beispielcode zum Hinzufügen verbundener Formen zu einer PowerPoint-Folie mithilfe von C++.

// Dateipfade
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";

// Laden Sie die Präsentationsdatei
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Holen Sie sich die erste Folie
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Fügen Sie die erste Form hinzu
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// Fügen Sie die zweite Form hinzu
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);

// Fügen Sie den Konnektor hinzu
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);

// Verbinden Sie die Formen mit dem Verbinder
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);

// Rufen Sie Reroute auf, um den automatisch kürzesten Pfad zwischen Shapes festzulegen
connector->Reroute();

// Präsentationsdatei speichern
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Fügen Sie der PowerPoint-Folie verbundene Formen hinzu

Klonen Sie Formen in PowerPoint-Folien

Sie können auch vorhandene Formen mit der Aspose.Slides for C++ API klonen. Verwenden Sie zum Klonen einer Form die von der API bereitgestellte Methode ShapeCollection->InsertClone(). Im Folgenden finden Sie die Schritte zum Klonen von Formen von einer Folie auf eine andere.

Im Folgenden finden Sie den Beispielcode zum Klonen von Formen in PowerPoint-Folien mit C++.

// Dateipfade
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";

// Laden Sie die Präsentationsdatei
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Greifen Sie auf die erste Folie zu
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Zugreifen auf die Formensammlung für die ausgewählte Folie
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();

// Holen Sie sich die Formsammlung von der Zielfolie
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();

// Klonform
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);

// Präsentationsdatei speichern
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Klonen Sie Formen in PowerPoint-Folien

Formen aus PowerPoint-Folien mit C++ entfernen

Im Folgenden sind die Schritte zum Entfernen von Formen aus PowerPoint-Folien aufgeführt.

Im Folgenden finden Sie den Beispielcode zum Entfernen von Formen aus PowerPoint-Folien mit C++.

// Dateipfade
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";

// Laden Sie die Präsentationsdatei
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Greifen Sie auf die erste Folie zu
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++)
{
	// Greifen Sie auf die Form zu
	SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));

	if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
	{
		// Entfernen Sie die Form
		slide->get_Shapes()->Remove(ashape);
	}
}

// Präsentationsdatei speichern
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

Unterstützte PowerPoint-Formen

Aspose.Slides for C++ unterstützt viele Formen, mit denen Sie arbeiten können. Im Folgenden finden Sie eine Liste mit einigen der unterstützten Formen.

Sie können die vollständige Liste der unterstützten Formen anzeigen, indem Sie die Aufzählungswerte ShapeType anzeigen.

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz anfordern, um die API ohne Evaluierungseinschränkungen zu testen.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie in PowerPoint Präsentationen mit C++ mit Formen arbeiten. Insbesondere haben Sie gelernt, wie Sie Formen zu PowerPoint-Folien hinzufügen, klonen und entfernen. Außerdem haben Sie gesehen, wie Sie Formen mit einem Verbinder verbinden. Neben der Arbeit mit Formen bietet Aspose.Slides for C++ viele zusätzliche Funktionen zur Verbesserung Ihrer PowerPoint Präsentationen. Sie können die API im Detail erkunden, indem Sie die offizielle Dokumentation besuchen. Bei Fragen können Sie uns gerne in unserem kostenlosen Support-Forum erreichen.

Siehe auch