Apply Shape Effects in Presentations Using PHP
While effects in PowerPoint can be used to make a shape stand out, they differ from fills or outlines. Using PowerPoint effects, you can create convincing reflections on a shape, spread a shape’s glow, etc.

-
PowerPoint provides six effects that can be applied to shapes. You can apply one or more effects to a shape.
-
Some combinations of effects look better than others. For this reason, PowerPoint options under Preset. The Preset options are essentially a known good-looking combination of two or more effects. This way, by selecting a preset, you won’t have to waste time testing or combining different effects to find a nice combination.
Aspose.Slides provides properties and methods under the EffectFormat class that allow you to apply the same effects to shapes in PowerPoint presentations.
Apply a Shadow Effect
This PHP code shows you how to apply the outer shadow effect (OuterShadowEffect) to a rectangle:
$pres = new Presentation();
try {
$shape = $pres->getSlides()->get_Item(0)->getShapes()->addAutoShape(ShapeType::RoundCornerRectangle, 20, 20, 200, 150);
$shape->getEffectFormat()->enableOuterShadowEffect();
$shape->getEffectFormat()->getOuterShadowEffect()->getShadowColor()->setColor(java("java.awt.Color")->DARK_GRAY);
$shape->getEffectFormat()->getOuterShadowEffect()->setDistance(10);
$shape->getEffectFormat()->getOuterShadowEffect()->setDirection(45);
$pres->save("output.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Apply a Reflection Effect
This PHP code shows you how to apply the reflection effect to a shape:
$pres = new Presentation();
try {
$shape = $pres->getSlides()->get_Item(0)->getShapes()->addAutoShape(ShapeType::RoundCornerRectangle, 20, 20, 200, 150);
$shape->getEffectFormat()->enableReflectionEffect();
$shape->getEffectFormat()->getReflectionEffect()->setRectangleAlign(RectangleAlignment->Bottom);
$shape->getEffectFormat()->getReflectionEffect()->setDirection(90);
$shape->getEffectFormat()->getReflectionEffect()->setDistance(55);
$shape->getEffectFormat()->getReflectionEffect()->setBlurRadius(4);
$pres->save("reflection.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Apply a Glow Effect
This PHP code shows you how to apply the glow effect to a shape:
$pres = new Presentation();
try {
$shape = $pres->getSlides()->get_Item(0)->getShapes()->addAutoShape(ShapeType::RoundCornerRectangle, 20, 20, 200, 150);
$shape->getEffectFormat()->enableGlowEffect();
$shape->getEffectFormat()->getGlowEffect()->getColor()->setColor(java("java.awt.Color")->MAGENTA);
$shape->getEffectFormat()->getGlowEffect()->setRadius(15);
$pres->save("glow.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Apply a Soft Edges Effect
This PHP code shows you how to apply the soft edges to a shape:
$pres = new Presentation();
try {
$shape = $pres->getSlides()->get_Item(0)->getShapes()->addAutoShape(ShapeType::RoundCornerRectangle, 20, 20, 200, 150);
$shape->getEffectFormat()->enableSoftEdgeEffect();
$shape->getEffectFormat()->getSoftEdgeEffect()->setRadius(15);
$pres->save("softEdges.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
FAQ
Can I apply multiple effects to the same shape?
Yes, you can combine different effects, such as shadow, reflection, and glow, on a single shape to create a more dynamic appearance.
What shapes can I apply effects to?
You can apply effects to various shapes, including autoshapes, charts, tables, pictures, SmartArt objects, OLE objects, and more.
Can I apply effects to grouped shapes?
Yes, you can apply effects to grouped shapes. The effect will apply to the entire group.