API reference / Common / Engine types / ShapeProperties
Interface: ShapeProperties
A shape's visual properties (a:spPr, CT_ShapeProperties): its a:xfrm placement together with geometry, fill, line, and effects.
Every field is optional — an unset field inherits (from the placeholder, the style reference, or the theme). The a:xfrm lives here (not on the ShapeNode) so a placeholder shape resolves its whole spPr — placement included — as one unit down the layout → master chain. The node exposes it uniformly across content kinds via ShapeNode::transform. a:effectDag is not modeled, only a:effectLst.
Properties
| Property | Description |
|---|---|
transformShapeTransform | null | a:xfrm — where the shape sits, how big it is, and its rotation/flip. None is unspecified — a placeholder shape inherits it down the layout → master chain. |
geometryShapeGeometry | null | a:prstGeom / a:custGeom — the outline. |
fillPaintFill | null | The interior fill — the EG_FillProperties choice. |
linePaintLine | null | a:ln — the outline stroke. |
effectsPaintEffectList | null | a:effectLst — shadow/glow/reflection/etc. |
scene3dPaintScene3d | null | a:scene3d — the 3-D scene. |
shape3dPaintShape3d | null | a:sp3d — the 3-D shape extrusion. |