Робота з фігурами в презентаціях PowerPoint за допомогою C++

Microsoft PowerPoint надає вам можливість додавати форми до ваших презентацій. Фігури можуть бути корисними в таких сценаріях, як показ потоку даних або різних фаз процесу. Ви можете використовувати такі форми, як еліпси, лінії, прямокутники тощо, і з’єднувати їх за допомогою сполучників. Ви можете опинитися в ситуації, коли вам доведеться додавати форми до слайдів PowerPoint програмно. З цією метою ця стаття навчить вас працювати з фігурами в презентаціях PowerPoint за допомогою C++.

C++ API для роботи з фігурами в презентаціях PowerPoint

Aspose.Slides for C++ — це рідна бібліотека C++, яка підтримує створення, читання та керування файлами PowerPoint. API також підтримує роботу з фігурами в презентаціях PowerPoint. Ви можете встановити API через NuGet або завантажити його безпосередньо з розділу Завантаження.

PM> Install-Package Aspose.Slides.Cpp

Додайте форму до слайда PowerPoint

Щоб додати фігуру, використовуйте метод ISlide->getShapes()->AddAutoShape(), наданий API. Нижче наведено кроки, щоб додати форму до слайда PowerPoint.

Нижче наведено приклад коду для додавання форми до слайда PowerPoint за допомогою C++.

// Шляхи до файлів
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";

// Завантажте файл презентації
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Отримайте перший слайд
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Додайте форму
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// Зберегти файл презентації
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Додайте форму до слайда PowerPoint

Додайте з’єднані фігури до слайда PowerPoint

З’єднувачі можна використовувати для з’єднання фігур. Щоб створити конектор, ви можете використати метод ISlide->getShapes()->AddConnector(). Нижче наведено кроки, щоб додати з’єднані фігури до слайда PowerPoint.

Нижче наведено зразок коду для додавання з’єднаних фігур до слайда PowerPoint за допомогою C++.

// Шляхи до файлів
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";

// Завантажте файл презентації
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Отримайте перший слайд
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Додайте першу форму
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);

// Додайте другу форму
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);

// Додайте з’єднувач
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);

// З’єднайте фігури з’єднувачем
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);

// Викличте перенаправлення, щоб установити автоматичний найкоротший шлях між фігурами
connector->Reroute();

// Зберегти файл презентації
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Додайте з’єднані фігури до слайда PowerPoint

Клонуйте фігури в слайдах PowerPoint

Ви також можете клонувати існуючі форми за допомогою Aspose.Slides for C++ API. Щоб клонувати фігуру, використовуйте метод ShapeCollection->InsertClone(), наданий API. Нижче наведено кроки для клонування фігур з одного слайда на інший.

Нижче наведено зразок коду для клонування фігур у слайдах PowerPoint за допомогою C++.

// Шляхи до файлів
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";

// Завантажте файл презентації
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Доступ до першого слайда
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// Доступ до колекції фігур для вибраного слайда
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();

// Отримайте колекцію форм із цільового слайда
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();

// Форма клону
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);

// Зберегти файл презентації
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Клонуйте фігури в слайдах PowerPoint

Видаліть фігури зі слайдів PowerPoint за допомогою C++

Нижче наведено кроки для видалення фігур зі слайдів PowerPoint.

Нижче наведено приклад коду для видалення фігур зі слайдів PowerPoint за допомогою C++.

// Шляхи до файлів
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";

// Завантажте файл презентації
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Доступ до першого слайда
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++)
{
	// Доступ до форми
	SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));

	if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
	{
		// Зніміть форму
		slide->get_Shapes()->Remove(ashape);
	}
}

// Зберегти файл презентації
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

Підтримувані форми PowerPoint

Aspose.Slides for C++ підтримує багато форм, з якими ви можете працювати. Нижче наведено список деяких підтримуваних форм.

Ви можете переглянути повний список підтримуваних фігур, переглянувши значення переліку ShapeType.

Отримайте безкоштовну ліцензію

Ви можете подати запит на безкоштовну тимчасову ліцензію, щоб випробувати API без обмежень оцінки.

Висновок

У цій статті ви дізналися, як працювати з фігурами в презентаціях PowerPoint за допомогою C++. Зокрема, ви дізналися, як додавати, клонувати та видаляти фігури зі слайдів PowerPoint. Крім того, ви побачили, як з’єднувати фігури за допомогою з’єднувача. Окрім роботи з фігурами, Aspose.Slides for C++ надає багато додаткових функцій для вдосконалення ваших презентацій PowerPoint. Ви можете детально вивчити API, відвідавши офіційну документацію. У разі будь-яких запитань зв’яжіться з нами на нашому безкоштовному форумі підтримки.

Дивись також