transform_slide
Vertically rescale a band of shapes on a slide in one atomic operation, keeping connectors attached and content outside the band untouched.
Instructions
Vertically rescale a band of shapes (e.g. shrink the content of a slide by 30%) in ONE atomic operation. Shapes whose top falls inside [topPt, bottomPt] are remapped to start at newTopPt with factor scaleY. Connector-like shapes (cxnSp, line/connector geometries, single-stroke bezier custGeom) get their height rescaled too so endpoints stay attached; all other shapes keep their height unless listed in scaleHeightShapeIds. Text, images and footers outside the band are untouched.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"slide": "<slide>",
"topPt": "<topPt>",
"bottomPt": "<bottomPt>",
"scaleY": "<scaleY>"
},
"name": "transform_slide"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slide | Yes | Slide number, 1-based | |
| topPt | Yes | Top of the band to transform, in points (slide is 960x540 pt). | |
| scaleY | Yes | Vertical scale factor, e.g. 0.7 = 30% shorter. | |
| bottomPt | Yes | Bottom of the band to transform, in points. | |
| newTopPt | No | Where the top of the scaled band should land. Default: keep topPt. | |
| presentationId | No | Target presentation ID. Optional when only one presentation is connected. | |
| scaleHeightShapeIds | No | Shape IDs (from scan_slide) whose height should scale with the band (e.g. the two big panel rectangles). |