Appearance
@shbernal/ts-pptx / index / ShapeProps
Interface: ShapeProps
Defined in: src/types/shape.ts:84
Extends
Extended by
Properties
adjustHandles?
optionaladjustHandles?:ShapeAdjustHandle[]
Defined in: src/types/shape.ts:170
Adjust handles (<a:ahLst>) for a custGeom shape — draggable handles (XY or polar), optionally bound to guides via gdRef*.
align?
optionalalign?:HAlign
Defined in: src/types/shape.ts:89
Horizontal alignment
Default
ts
'left'altText?
optionalaltText?:string
Defined in: src/types/object.ts:43
Alt Text value ("How would you describe this object and its contents to someone who is blind?")
- serialized to the generated object's
p:cNvPrdescrattribute - PowerPoint: [right-click on the object] > "Edit Alt Text..."
Example
ts
'Quarterly revenue bar chart'Inherited from
angleRange?
optionalangleRange?: [number,number]
Defined in: src/types/shape.ts:96
Radius (only for ShapeType.pie, ShapeType.arc, ShapeType.blockArc)
- In the case of ShapeType.blockArc you have to setup the arcThicknessRatio
- values: [0-359, 0-359]
Default
ts
[270, 0]arcThicknessRatio?
optionalarcThicknessRatio?:number
Defined in: src/types/shape.ts:115
Radius (only for ShapeType.blockArc)
- You have to setup the angleRange values too
- values: 0.0-1.0
Default
ts
0.5connectionSites?
optionalconnectionSites?:ShapeConnectionSite[]
Defined in: src/types/shape.ts:165
Connection sites (<a:cxnLst>) for a custGeom shape — the points a connector can attach to. Positions are absolute in the object's own space (like points); a startShapeIdx/endShapeIdx on an addConnector indexes into this list.
Example
ts
[{ ang: 0, x: 1, y: 0 }, { ang: 180, x: 0, y: 1 }]fill?
optionalfill?:ShapeFillProps
Defined in: src/types/shape.ts:122
Shape fill color properties
Examples
ts
{ color:'FF0000' } // hex color (red)ts
{ color:'0088CC', transparency:50 } // hex color, 50% transparentts
{ color:SchemeColor.accent1 } // Theme color Accent1flipH?
optionalflipH?:boolean
Defined in: src/types/shape.ts:127
Flip shape horizontally?
Default
ts
falseflipV?
optionalflipV?:boolean
Defined in: src/types/shape.ts:132
Flip shape vertical?
Default
ts
falseguides?
optionalguides?:ShapeGuide[]
Defined in: src/types/shape.ts:158
Geometry guides (<a:gdLst>) for a custGeom shape — named construction formulas that connection sites / adjust handles can reference. Advanced: each formula is emitted verbatim.
Example
ts
[{ name: 'w2', formula: 'val 10800' }]h?
optionalh?:Coord
Defined in: src/types/core.ts:49
Height
- inches or percentage
Examples
ts
10.25 // height in inchests
'75%' // height as percentage of slide sizeInherited from
hyperlink?
optionalhyperlink?:HyperlinkProps
Defined in: src/types/shape.ts:137
Add hyperlink to shape
Example
ts
hyperlink: { url: "https://example.com", tooltip: "Visit Homepage" },line?
optionalline?:ShapeLineProps
Defined in: src/types/shape.ts:141
Line options
objectLock?
optionalobjectLock?:ObjectLockProps
Defined in: src/types/object.ts:54
Object lock flags (DrawingML a:spLocks / a:picLocks / a:graphicFrameLocks)
- restrict how the object can be manipulated in PowerPoint (e.g. prevent moving, resizing, or grouping)
- each flag maps 1:1 to the OOXML attribute of the same name; only flags set to
trueare emitted - PowerPoint UI: Selection Pane / right-click protections (most locks are honored at edit time, not as a password)
- flags only apply to the object types that support them (see each flag); flags set on an unsupported object type are ignored with a console warning
Examples
ts
{ noMove: true, noResize: true } // pin an object in placets
{ noGrp: true } // exclude from groupingInherited from
objectName?
optionalobjectName?:string
Defined in: src/types/object.ts:36
Object name
- used instead of default "Object N" name
- PowerPoint: Home > Arrange > Selection Pane...
Default
ts
'Object 1'Example
ts
'Antenna Design 9'Inherited from
points?
optionalpoints?:GeometryPoint[]
Defined in: src/types/shape.ts:152
Points (only for ShapeType.custGeom)
- type: 'arc' (no end point — it is computed from the pen position, radii and sweep)
hRShape Arc Height RadiuswRShape Arc Width RadiusstAngShape Arc Start Angle (degrees, not wrapped into 0..360)swAngShape Arc Swing Angle (degrees, not wrapped into 0..360)
See
http://www.datypic.com/sc/ooxml/e-a_arcTo-1.html
Example
ts
[{ x: 0, y: 0 }, { x: 10, y: 10 }] // draw a line between those two pointsrectRadius?
optionalrectRadius?:number
Defined in: src/types/shape.ts:176
Rounded rectangle radius (only for ShapeType.roundRect)
- values: 0.0 to 1.0
Default
ts
0rotate?
optionalrotate?:number
Defined in: src/types/shape.ts:183
Rotation (degrees)
- range: -360 to 360
Default
ts
0Example
ts
180 // rotate 180 degreesshadow?
optionalshadow?:ShadowProps
Defined in: src/types/shape.ts:187
Shadow options
shapeAdjust?
optionalshapeAdjust?:ShapeAdjustValue|ShapeAdjustValue[]
Defined in: src/types/shape.ts:108
Preset-geometry adjustment handles (<a:avLst> guides) for any preset shape.
- Use this to tune adjustment handles that lack a dedicated shortcut option, e.g. chevron/arrow point depth, callout pointer, bevel/frame thickness.
- Accepts a single guide or an array; each
valueis a0.0–1.0fraction of the handle's range (see ShapeAdjustValue). rectRadius/angleRangeremain friendly shortcuts; anyshapeAdjustguide that does not collide with a shortcut name is emitted in addition.
Examples
ts
{ name: 'adj', value: 0.25 } // set the single adjust handle to 25%ts
[{ name: 'adj1', value: 0.5 }, { name: 'adj2', value: 0.25 }] // two handlesw?
optionalw?:Coord
Defined in: src/types/core.ts:56
Width
- inches or percentage
Examples
ts
10.25 // width in inchests
'75%' // width as percentage of slide sizeInherited from
x?
optionalx?:Coord
Defined in: src/types/core.ts:35
Horizontal position
- inches or percentage
Examples
ts
10.25 // position in inchests
'75%' // position as percentage of slide sizeInherited from
y?
optionaly?:Coord
Defined in: src/types/core.ts:42
Vertical position
- inches or percentage
Examples
ts
10.25 // position in inchests
'75%' // position as percentage of slide size