Skip to content

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 ​

PropertyDescription
transform
ShapeTransform | 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.
geometry
ShapeGeometry | null
a:prstGeom / a:custGeom — the outline.
fill
PaintFill | null
The interior fill — the EG_FillProperties choice.
line
PaintLine | null
a:ln — the outline stroke.
effects
PaintEffectList | null
a:effectLst — shadow/glow/reflection/etc.
scene3d
PaintScene3d | null
a:scene3d — the 3-D scene.
shape3d
PaintShape3d | null
a:sp3d — the 3-D shape extrusion.