SmartArt используется для повышения качества презентаций PowerPoint и визуального представления данных. Его можно использовать для того, чтобы сделать текст более заметным и привлекательным, а также для демонстрации блок-схем, процессов, реляционных диаграмм и т. д. В этой статье вы узнаете, как создавать SmartArt в презентациях PowerPoint с помощью C++.
- C++ API для создания SmartArt в презентациях PowerPoint
- Создание фигуры SmartArt в PowerPoint с помощью C++
- Доступ к фигуре SmartArt в презентации PowerPoint
- Изменение стиля формы SmartArt с помощью C++
C++ API для создания SmartArt в презентациях PowerPoint
Aspose.Slides for C++ — это C++ API для работы с файлами PowerPoint. Он позволяет создавать, читать и изменять файлы PPT и PPTX без дополнительного программного обеспечения. Кроме того, API поддерживает создание SmartArt в презентациях PowerPoint. Вы можете либо установить API через NuGet, либо загрузить его напрямую из раздела Загрузки.
PM> Install-Package Aspose.Slides.Cpp
Создание фигуры SmartArt в PowerPoint с помощью C++
Ниже приведены шаги по созданию фигуры SmartArt в презентациях PowerPoint.
- Создайте экземпляр класса Presentation для представления нового файла PowerPoint.
- Получите нужный слайд.
- Добавьте SmartArt с помощью метода ISlide->getShapes()->AddSmartArt(float x, float y, float width, float height, SmartArt::SmartArtLayoutType layoutType).
- Сохраните презентацию методом Презентация->Сохранить(System::String fname, Export::SaveFormat format).
В следующем примере кода показано, как создать фигуру SmartArt в PowerPoint с помощью C++.
// Путь к файлу
const String outputFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
// Загрузите файл презентации
SharedPtr<Presentation> presentation = MakeObject<Presentation>();
// Получить первый слайд
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Добавить смарт-арт
auto smartArt = slide->get_Shapes()->AddSmartArt(0, 0, 400, 400, Aspose::Slides::SmartArt::SmartArtLayoutType::BasicBlockList);
smartArt->get_AllNodes()->idx_get(0)->get_TextFrame()->set_Text(u"First Block");
smartArt->get_AllNodes()->idx_get(1)->get_TextFrame()->set_Text(u"Second Block");
// Сохранить презентацию
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

Изображение вывода, сгенерированного примером кода
Доступ к фигуре SmartArt в презентации PowerPoint
Вы можете получить доступ к фигурам SmartArt в файлах PowerPoint, выполнив следующие действия.
- Загрузите файл PowerPoint с помощью класса Presentation.
- Прокрутите фигуры.
- Если фигура имеет тип ISmartArt, получите ссылку на нее как на объект ISmartArt.
В следующем примере кода показано, как получить доступ к фигуре SmartArt из презентации PowerPoint с помощью C++.
// Путь к файлу
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
// Загрузите файл презентации
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Цикл по фигурам
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
// Проверьте, относится ли фигура к типу SmartArt
if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
{
// Приведение формы к SmartArt
auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);
Console::WriteLine(String::Format(u"Shape Name: {0}", smartArt->get_Name()));
// Проверка макета SmartArt
/*if (smartArt->get_Layout() == SmartArtLayoutType::BasicBlockList)
{
Console::WriteLine(u"Do some thing here....");
}*/
}
}
Изменение стиля формы SmartArt с помощью C++
Вы можете легко изменить стиль фигуры SmartArt после доступа к ней. Ниже приведены шаги по изменению стиля фигуры SmartArt с помощью C++.
- Загрузите файл PowerPoint с помощью класса Presentation.
- Прокрутите фигуры.
- Если фигура имеет тип ISmartArt, получите ссылку на нее как на объект ISmartArt.
- Измените стиль с помощью методов ISmartArt->setColorStyle(значение SmartArtColorType) и ISmartArt->setQuickStyle(значение SmartArtQuickStyleType).
- Сохраните презентацию методом Презентация->Сохранить(System::String fname, Export::SaveFormat format).
В следующем примере кода показано, как изменить стиль фигуры SmartArt с помощью C++.
// Пути к файлам
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
const String outputFilePath = u"OutputDirectory\\ChangeSmartArt_out.pptx";
// Загрузите файл презентации
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Цикл по фигурам
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
// Проверьте, относится ли фигура к типу SmartArt
if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
{
// Приведение формы к SmartArt
auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);
// Проверить стиль SmartArt
if (smartArt->get_QuickStyle() == SmartArtQuickStyleType::SimpleFill) {
// Изменить стиль SmartArt
smartArt->set_QuickStyle(SmartArtQuickStyleType::Cartoon);
}
// Проверьте тип цвета SmartArt
if (smartArt->get_ColorStyle() == SmartArtColorType::ColoredFillAccent1) {
// Изменить тип цвета SmartArt
smartArt->set_ColorStyle(SmartArtColorType::ColorfulAccentColors);
}
}
}
// Сохранить презентацию
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Получить бесплатную лицензию
Чтобы попробовать API без ограничений на пробную версию, вы можете запросить бесплатную временную лицензию.
Вывод
В этой статье вы узнали, как создать фигуру SmartArt в презентациях PowerPoint с помощью C++. Кроме того, вы увидели, как получить доступ к стилю формы SmartArt и изменить его с помощью Aspose.Slides for C++ API. Это надежный и многофункциональный API, который предоставляет множество дополнительных функций для работы с файлами PowerPoint. Вы можете подробно изучить API, посетив официальную документацию. Если у вас возникнут вопросы, обращайтесь к нам на наш бесплатный форум поддержки.