Применение эффектов фигур в презентациях с использованием C++
Хотя эффекты в PowerPoint можно использовать, чтобы выделить форму, они отличаются от заливок или контуров. С помощью эффектов PowerPoint можно создать убедительные отражения на форме, распространить светящийся ореол формы и т.д.

- PowerPoint предоставляет шесть эффектов, которые можно применять к формам. Вы можете применить один или несколько эффектов к форме.
- Некоторые комбинации эффектов выглядят лучше, чем другие. По этой причине в PowerPoint есть параметры Preset. Параметры Preset представляют собой известные хорошо выглядящие комбинации двух и более эффектов. Таким образом, выбирая готовый набор, вам не придётся тратить время на тестирование или комбинирование различных эффектов в поисках хорошей комбинации.
Aspose.Slides предоставляет свойства и методы в классе EffectFormat , которые позволяют применять те же эффекты к формам в презентациях PowerPoint.
Применить эффект тени
Этот C++ код показывает, как применить внешний эффект тени (OuterShadowEffect) к прямоугольнику:
auto pres = System::MakeObject<Presentation>();
auto slide = pres->get_Slides()->idx_get(0);
auto shape = slide->get_Shapes()->AddAutoShape(ShapeType::RoundCornerRectangle, 20.0f, 20.0f, 200.0f, 150.0f);
auto effectFormat = shape->get_EffectFormat();
effectFormat->EnableOuterShadowEffect();
auto outerShadowEffect = effectFormat->get_OuterShadowEffect();
outerShadowEffect->get_ShadowColor()->set_Color(System::Drawing::Color::get_DarkGray());
outerShadowEffect->set_Distance(10);
outerShadowEffect->set_Direction(45.0f);
pres->Save(u"output.pptx", SaveFormat::Pptx);
Применить эффект отражения
Этот C++ код показывает, как применить эффект отражения к форме:
auto pres = System::MakeObject<Presentation>();
auto slide = pres->get_Slides()->idx_get(0);
auto shape = slide->get_Shapes()->AddAutoShape(ShapeType::RoundCornerRectangle, 20.0f, 20.0f, 200.0f, 150.0f);
auto effectFormat = shape->get_EffectFormat();
effectFormat->EnableReflectionEffect();
auto reflectionEffect = effectFormat->get_ReflectionEffect();
reflectionEffect->set_RectangleAlign(RectangleAlignment::Bottom);
reflectionEffect->set_Direction(90.0f);
reflectionEffect->set_Distance(55);
reflectionEffect->set_BlurRadius(4);
pres->Save(u"reflection.pptx", SaveFormat::Pptx);
Применить эффект светящегося ореола
Этот C++ код показывает, как применить эффект светящегося ореола к форме:
auto pres = System::MakeObject<Presentation>();
auto slide = pres->get_Slides()->idx_get(0);
auto shape = slide->get_Shapes()->AddAutoShape(ShapeType::RoundCornerRectangle, 20.0f, 20.0f, 200.0f, 150.0f);
auto effectFormat = shape->get_EffectFormat();
effectFormat->EnableGlowEffect();
auto glowEffect = effectFormat->get_GlowEffect();
glowEffect->get_Color()->set_Color(System::Drawing::Color::get_Magenta());
glowEffect->set_Radius(15);
pres->Save(u"glow.pptx", SaveFormat::Pptx);
Применить эффект мягких краёв
Этот C++ код показывает, как применить мягкие края к форме:
auto pres = System::MakeObject<Presentation>();
auto slide = pres->get_Slides()->idx_get(0);
auto shape = slide->get_Shapes()->AddAutoShape(ShapeType::RoundCornerRectangle, 20.0f, 20.0f, 200.0f, 150.0f);
auto effectFormat = shape->get_EffectFormat();
effectFormat->EnableSoftEdgeEffect();
auto softEdgeEffect = effectFormat->get_SoftEdgeEffect();
softEdgeEffect->set_Radius(15);
pres->Save(u"softEdges.pptx", SaveFormat::Pptx);
FAQ
Можно ли применить несколько эффектов к одной и той же форме?
Да, вы можете комбинировать различные эффекты, такие как тень, отражение и светящийся ореол, на одной форме, чтобы создать более динамичный вид.
К каким формам можно применять эффекты?
Эффекты можно применять к различным формам, включая автоформы, диаграммы, таблицы, изображения, объекты SmartArt, OLE‑объекты и многое другое.
Можно ли применять эффекты к сгруппированным формам?
Да, эффекты можно применять к сгруппированным формам. Эффект будет применён ко всей группе.