Microsoft PowerPoint vous offre la possibilité d’ajouter des formes à vos présentations. Les formes peuvent être utiles dans des scénarios tels que l’affichage du flux de données ou l’affichage des différentes phases d’un processus. Vous pouvez utiliser des formes telles que des ellipses, des lignes, des rectangles, etc. et les connecter à l’aide de connecteurs. Vous pouvez vous retrouver dans des scénarios où vous devez ajouter des formes aux diapositives PowerPoint par programmation. À cette fin, cet article vous apprendra à travailler avec des formes dans des présentations PowerPoint à l’aide de C++.
- API C++ pour travailler avec des formes dans des présentations PowerPoint
- Ajouter une forme à une diapositive PowerPoint
- Ajouter des formes connectées à une diapositive PowerPoint
- Cloner des formes dans des diapositives PowerPoint
- Supprimer les formes des diapositives PowerPoint à l’aide de C++
- Formes PowerPoint prises en charge
- Obtenez une licence gratuite
API C++ pour travailler avec des formes dans des présentations PowerPoint
Aspose.Slides for C++ est une bibliothèque C++ native qui prend en charge la création, la lecture et la manipulation de fichiers PowerPoint. L’API prend également en charge l’utilisation de formes dans les présentations PowerPoint. Vous pouvez soit installer l’API via NuGet ou la télécharger directement à partir de la section Téléchargements.
PM> Install-Package Aspose.Slides.Cpp
Ajouter une forme à une diapositive PowerPoint
Pour ajouter une forme, utilisez la méthode ISlide->getShapes()->AddAutoShape() fournie par l’API. Voici les étapes pour ajouter une forme à une diapositive PowerPoint.
- Tout d’abord, chargez la présentation PowerPoint à l’aide de la classe Presentation.
- Récupérez la diapositive où vous souhaitez ajouter la forme à l’aide de la méthode Presentation->getSlides()->idxget (int32t index).
- Ajoutez la forme à l’aide de la méthode ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height).
- Enfin, enregistrez la présentation en utilisant la méthode Presentation->Save (System::String name, Export::SaveFormat format).
Voici l’exemple de code permettant d’ajouter une forme à une diapositive PowerPoint à l’aide de C++.
// Chemins de fichiers
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";
// Charger le fichier de présentation
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Obtenir la première diapositive
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Ajouter la forme
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// Enregistrer le fichier de présentation
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Ajouter des formes connectées à une diapositive PowerPoint
Les connecteurs peuvent être utilisés pour connecter des formes. Pour créer un connecteur, vous pouvez utiliser la méthode ISlide->getShapes()->AddConnector(). Voici les étapes pour ajouter des formes connectées à une diapositive PowerPoint.
- Tout d’abord, chargez la présentation PowerPoint à l’aide de la classe Presentation.
- Récupérez la diapositive où vous souhaitez ajouter les formes à l’aide de la méthode Presentation->getSlides()->idxget (int32t index).
- Ajoutez les formes à l’aide de la méthode ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height).
- Ajoutez le connecteur à l’aide de la méthode ISlide->getShapes()->AddConnector (ShapeType shapeType, float x, float y, float width, float height).
- Connectez les formes au connecteur en utilisant IConnector->setStartShapeConnectedTo (System::SharedPtr value) et IConnector->setEndShapeConnectedTo (System::SharedPtr valeur) méthodes.
- Appelez la méthode IConnector->Reroute() pour créer le chemin de connexion automatique le plus court.
- Enfin, enregistrez la présentation en utilisant la méthode Presentation->Save (System::String name, Export::SaveFormat format).
Voici l’exemple de code permettant d’ajouter des formes connectées à une diapositive PowerPoint à l’aide de C++.
// Chemins de fichiers
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";
// Charger le fichier de présentation
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Obtenir la première diapositive
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Ajouter la première forme
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// Ajouter la deuxième forme
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);
// Ajouter le connecteur
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);
// Joindre les formes avec le connecteur
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);
// Appelez reroute pour définir le chemin le plus court automatique entre les formes
connector->Reroute();
// Enregistrer le fichier de présentation
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Cloner des formes dans des diapositives PowerPoint
Vous pouvez également cloner des formes existantes à l’aide de l’API Aspose.Slides for C++. Pour cloner une forme, utilisez la méthode ShapeCollection->InsertClone() fournie par l’API. Voici les étapes pour cloner des formes d’une diapositive à une autre.
- Tout d’abord, chargez la présentation PowerPoint à l’aide de la classe Presentation.
- Récupérez la diapositive source à l’aide de la méthode Presentation->getSlides()->idxget (int32t index).
- Accédez aux formes de la diapositive source à l’aide de la méthode ISlide->getShapes().
- Accédez aux formes de la diapositive de destination à l’aide de la méthode ISlide->getShapes().
- Cloner la forme en utilisant IShapeCollection->InsertClone (int32t index, System::SharedPtr sourceShape, float x, float y) méthode.
- Enfin, enregistrez la présentation en utilisant la méthode Presentation->Save (System::String name, Export::SaveFormat format).
Voici un exemple de code pour cloner des formes dans des diapositives PowerPoint à l’aide de C++.
// Chemins de fichiers
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";
// Charger le fichier de présentation
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Accéder à la première diapositive
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Accéder à la collection de formes pour la diapositive sélectionnée
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();
// Obtenir la collection de formes à partir de la diapositive de destination
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();
// Forme clonée
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);
// Enregistrer le fichier de présentation
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Supprimer les formes des diapositives PowerPoint à l’aide de C++
Voici les étapes pour supprimer des formes des diapositives PowerPoint.
- Tout d’abord, chargez la présentation PowerPoint à l’aide de la classe Presentation.
- Récupérez la diapositive à partir de laquelle vous souhaitez supprimer la forme à l’aide de la méthode Presentation->getSlides()->idxget (int32t index).
- Trouvez la forme requise en faisant correspondre le texte alternatif à l’aide de la méthode IShape->getAlternativeText().
- Supprimez la forme en utilisant ISlide->getShapes()->Remove (System::SharedPtr forme) méthode.
- Enfin, enregistrez la présentation en utilisant la méthode Presentation->Save (System::String name, Export::SaveFormat format).
Voici l’exemple de code permettant de supprimer des formes des diapositives PowerPoint à l’aide de C++.
// Chemins de fichiers
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";
// Charger le fichier de présentation
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Accéder à la première diapositive
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++)
{
// Accéder à la forme
SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));
if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
{
// Supprimer la forme
slide->get_Shapes()->Remove(ashape);
}
}
// Enregistrer le fichier de présentation
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Formes PowerPoint prises en charge
Aspose.Slides for C++ prend en charge de nombreuses formes avec lesquelles vous pouvez travailler. Voici une liste de certaines des formes prises en charge.
Vous pouvez afficher la liste complète des formes prises en charge en affichant les valeurs d’énumération ShapeType.
Obtenez une licence gratuite
Vous pouvez demander une licence temporaire gratuite pour essayer l’API sans limitation d’évaluation.
Conclusion
Dans cet article, vous avez appris à utiliser des formes dans des présentations PowerPoint à l’aide de C++. Plus précisément, vous avez appris à ajouter, cloner et supprimer des formes de diapositives PowerPoint. De plus, vous avez vu comment connecter des formes à l’aide d’un connecteur. En plus de travailler avec des formes, Aspose.Slides for C++ fournit de nombreuses fonctionnalités supplémentaires pour améliorer vos présentations PowerPoint. Vous pouvez explorer l’API en détail en visitant la documentation officielle. En cas de questions, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.