a:effectLst (Effect List)
Container for visual effects applied to shapes, such as shadows, glows, reflections, and transformations.
Child elements
Description
\:effectLst\ is the DrawingML container element for visual effects applied to shapes. It is defined in ECMA-376 Part 1 §20.1.8.19.
The effect list collects various visual effects that enhance shape appearance:
- Shadow effects: Outer and inner shadows with customizable blur and offset
- Light effects: Glow and soft edge for luminous appearance
- Reflection: Mirror reflection effect below or beside shape
- Blur: Soft blur/defocus effect for artistic appearance
- Effect DAG: Complex effect compositions using directed acyclic graphs
Effect lists enable:
- Professional visual polish for presentations
- Layered styling (multiple effects simultaneously)
- Consistent effect application across design elements
- Dynamic effect adjustments via properties
- Sophisticated visual designs
Attributes
| Attribute | Type | Values | Description |
|---|---|---|---|
| (none) | - | - | \:effectLst\ has no attributes; contains child effect elements. |
Content Model
\:effectLst\ can contain:
- Shadow effects (0–1):
- \:outerShdw\ — Drop shadow outside shape boundary
- \:innerShdw\ — Shadow inside shape boundary
- Light effects (0–1):
- \:glow\ — Soft glow around shape edge
- \:softEdge\ — Soft feathering at edge
- Mirror effects (0–1):
- \:reflection\ — Mirror reflection below/beside shape
- Blur effects (0–1):
- \:blur\ — Blur/defocus effect
- Complex effects (0–1):
- \:effectDag\ — Complex effect compositions (DAG-based)
Note: Most effects are mutually exclusive or used selectively. Only one of each type should typically be present.
Child Elements Table
| Element | Occurrence | Type | Description |
|---|---|---|---|
| \:outerShdw\ | 0–1 | Outer Shadow | Drop shadow effect; extends outside shape. |
| \:innerShdw\ | 0–1 | Inner Shadow | Shadow inside shape boundary. |
| \:glow\ | 0–1 | Glow Effect | Soft luminous glow around shape. |
| \:softEdge\ | 0–1 | Soft Edge | Feathered edge (blur at boundary). |
| \:reflection\ | 0–1 | Reflection | Mirror reflection; creates depth. |
| \:blur\ | 0–1 | Blur | Defocus/blur effect on entire shape. |
| \:effectDag\ | 0–1 | Effect DAG | Complex effect graph; advanced compositions. |
Examples
Empty Effect List (No Effects)
<a:spPr>
<a:solidFill><a:srgbClr val="4472C4"/></a:solidFill>
<a:effectLst/>
</a:spPr>
using DocumentFormat.OpenXml.Drawing;
var spPr = new ShapeProperties();
var fill = new SolidFill();
fill.Append(new RgbColorModelHex { Val = "4472C4" });
spPr.Append(fill);
spPr.Append(new EffectList()); // Empty effect list
Outer Shadow Effect
<a:effectLst>
<a:outerShdw blurRad="38100" dist="38100" dir="2700000" algn="tl" rotWithShape="1">
<a:srgbClr val="000000">
<a:alpha val="50000"/>
</a:srgbClr>
</a:outerShdw>
</a:effectLst>
var effectList = new EffectList();
var outerShadow = new OuterShadow
{
BlurRadius = 38100,
Distance = 38100,
Direction = 2700000, // 45°
Alignment = RectangleAlignmentValues.TopLeft,
RotateWithShape = true
};
var color = new RgbColorModelHex { Val = "000000" };
var alpha = new Alpha { Val = 50000 }; // 50% opacity
color.Append(alpha);
outerShadow.Append(color);
effectList.Append(outerShadow);
Glow Effect (Blue Glow)
<a:effectLst>
<a:glow rad="50800">
<a:srgbClr val="4472C4">
<a:alpha val="75000"/>
</a:srgbClr>
</a:glow>
</a:effectLst>
var effectList = new EffectList();
var glow = new Glow { Radius = 50800 };
var color = new RgbColorModelHex { Val = "4472C4" };
var alpha = new Alpha { Val = 75000 };
color.Append(alpha);
glow.Append(color);
effectList.Append(glow);
Soft Edge Effect
<a:effectLst>
<a:softEdge rad="50800"/>
</a:effectLst>
var effectList = new EffectList();
var softEdge = new SoftEdge { Radius = 50800 };
effectList.Append(softEdge);
Reflection Effect
<a:effectLst>
<a:reflection blurRad="25400" stA="100000" stPos="100000" endA="0" endPos="100000" dist="25400" dir="2700000" fadeDir="5400000" rotWithShape="0">
<a:srgbClr val="000000">
<a:alpha val="50000"/>
</a:srgbClr>
</a:reflection>
</a:effectLst>
var effectList = new EffectList();
var reflection = new Reflection
{
BlurRadius = 25400,
StartAlpha = 100000,
StartPosition = 100000,
EndAlpha = 0,
EndPosition = 100000,
Distance = 25400,
Direction = 2700000,
FadeDirection = 5400000,
RotateWithShape = false
};
var color = new RgbColorModelHex { Val = "000000" };
var alpha = new Alpha { Val = 50000 };
color.Append(alpha);
reflection.Append(color);
effectList.Append(reflection);
Multiple Effects (Shadow + Glow)
<a:effectLst>
<a:outerShdw blurRad="38100" dist="38100" dir="2700000">
<a:srgbClr val="000000"><a:alpha val="50000"/></a:srgbClr>
</a:outerShdw>
<a:glow rad="50800">
<a:srgbClr val="4472C4"><a:alpha val="75000"/></a:srgbClr>
</a:glow>
</a:effectLst>
var effectList = new EffectList();
// Outer shadow
var shadow = new OuterShadow
{
BlurRadius = 38100,
Distance = 38100,
Direction = 2700000
};
var shadowColor = new RgbColorModelHex { Val = "000000" };
shadowColor.Append(new Alpha { Val = 50000 });
shadow.Append(shadowColor);
effectList.Append(shadow);
// Glow
var glow = new Glow { Radius = 50800 };
var glowColor = new RgbColorModelHex { Val = "4472C4" };
glowColor.Append(new Alpha { Val = 75000 });
glow.Append(glowColor);
effectList.Append(glow);
Blur Effect (Artistic Blur)
<a:effectLst>
<a:blur rad="50800"/>
</a:effectLst>
var effectList = new EffectList();
var blur = new Blur { Radius = 50800 };
effectList.Append(blur);
Effect Types Reference
Shadow Effects
| Effect | Purpose | Properties |
|---|---|---|
| \:outerShdw\ | Drop shadow | Blur, distance, direction, angle |
| \:innerShdw\ | Inner shadow | Blur, distance, direction, angle |
Light Effects
| Effect | Purpose | Properties |
|---|---|---|
| \:glow\ | Soft glow | Radius, color, alpha |
| \:softEdge\ | Edge feathering | Radius |
Mirror Effects
| Effect | Purpose | Properties |
|---|---|---|
| \:reflection\ | Mirror reflection | Blur, distance, alpha fade, direction |
Blur Effects
| Effect | Purpose | Properties |
|---|---|---|
| \:blur\ | Defocus blur | Radius |
Blur Radius Reference
Blur radius values are in EMUs (English Metric Units):
| Pixels | EMU Value | Effect |
|---|---|---|
| 1 px | 9525 | Minimal blur |
| 3 px | 28575 | Light blur |
| 5 px | 47625 | Moderate blur |
| 10 px | 95250 | Heavy blur |
| 20 px | 190500 | Very heavy blur |
Formula: EMU = Pixels × 9525
Distance and Direction Reference
Shadow/effect positioning:
| Direction (degrees) | EMU Value | Description |
|---|---|---|
| 0° | 0 | Right |
| 45° | 2700000 | Down-right |
| 90° | 5400000 | Down |
| 135° | 8100000 | Down-left |
| 180° | 10800000 | Left |
Common Patterns
Professional Drop Shadow
xml
<a:effectLst>
<a:outerShdw blurRad="38100" dist="50800" dir="2700000">
<a:srgbClr val="000000"><a:alpha val="60000"/></a:srgbClr>
</a:outerShdw>
</a:effectLst>
Glowing Icon
xml
<a:effectLst>
<a:glow rad="50800">
<a:srgbClr val="FFC000"><a:alpha val="80000"/></a:srgbClr>
</a:glow>
</a:effectLst>
Subtle Soft Edge
xml
<a:effectLst>
<a:softEdge rad="25400"/>
</a:effectLst>
Interaction with Other Properties
Effects compose with:
- Fill (\:solidFill\, etc.) — Effects applied over fill
- Line (\:ln) — Effects applied to outline
- Transform (\:xfrm) — Effects rotate with shape if
otWithShape=”1”\
Notes
Element Characteristics
- Optional: Can be present but empty (<a:effectLst/>)
- Order matters: Effects render in document order (top to bottom)
- Performance: Many effects may impact rendering performance
- Mutually exclusive: Most effect types don’t combine (either shadow OR glow, typically)
- Color support: Most effects support color and transparency via child color element
Rendering
- Word: Full effect support for shadows, glows, reflections
- PowerPoint: All effects supported; animations work with effects
- Excel: Limited effect support in older versions
- Publisher: Full effect support
Best Practices
- Use effects sparingly for visual polish, not clutter
- Prefer soft shadows for professional appearance
- Combine effects purposefully (shadow + glow for emphasis)
- Test effects across Office applications for consistency
- Consider performance impact with many effects
- Use alpha transparency to avoid harsh/opaque effects
- Document effect combinations for consistency in templates
Compatibility
- Office 2007 and later
- Some older clients may not render complex effects
- PDF export typically preserves shadow/glow effects
- Web rendering varies by platform