a:effectDag (Effect DAG)
Defines effect styling for theme styles using a directed acyclic graph (DAG) of effect operations.
Parent elements
Child elements
Description
a:effectDag specifies effect styling for theme-based style definitions using a directed acyclic graph (DAG) representation of effects. It is defined in ECMA-376 Part 1 §20.1.4.2.11.
Unlike effect lists (a:effectLst), which apply effects sequentially, the DAG structure allows more complex effect compositions. It is primarily used in theme formatting (a:theme) to define reusable effect styles that can be applied to shapes and objects throughout a document.
Effects defined in a DAG can include shadows, glows, bevels, blurs, and many other visual transformations.
Attributes
| Attribute | Type | Possible Values | Description |
|---|---|---|---|
| (none) | — | — | a:effectDag has no attributes; effects are defined via child elements. |
Examples
Effect DAG with Shadow Effect
<a:effectDag>
<a:effectLst>
<a:outerShdw blurRad="76200" dist="38100" dir="2700000" algn="tl" rotWithShape="0">
<a:srgbClr val="000000">
<a:alpha val="50000"/>
</a:srgbClr>
</a:outerShdw>
</a:effectLst>
</a:effectDag>
using DocumentFormat.OpenXml.Drawing;
var effectDag = new EffectDag();
var effectLst = new EffectList();
var shadow = new OuterShadow
{
BlurRadius = 76200,
Distance = 38100,
Direction = 2700000
};
effectLst.Append(shadow);
effectDag.Append(effectLst);
Notes
a:effectDagis typically used in theme definitions (a:theme) rather than in individual shape properties.- The DAG structure is more flexible than sequential effect lists, allowing complex effect compositions.
- Effect DAGs are part of the theme style system and provide reusable effect definitions.
- Consumer applications may render effect DAGs differently depending on their effect support level.