User Guide
04.3 · Editing Annotations

Per-Vertex Editing

Polygons, polylines and freehand shapes expose an orange vertex handle at each point. Drag one to adjust that single vertex without disturbing the rest of the shape.

When Vertex Handles Appear

Select any annotation whose geometry is a list of points:

  • Polygon
  • Polyline
  • Freehand
  • (Cloud: free-form Revision Cloud inherits vertex handles for its baked bump path.)

You'll see the usual 8-direction bounding box handles in blue PLUS a small orange dot at every vertex. The orange dots size with zoom (5 pt on-screen radius).

Dragging a Vertex

  1. Hover over an orange vertex handle — the cursor changes to a crosshair.
  2. Click and drag.
  3. The vertex moves with the cursor; the two adjacent edges stretch/shrink to follow.
  4. Release to commit.

Only the one vertex moves. Neighbouring vertices stay in place.

Snap to Neighbour (Shift)

Hold Shift while dragging to snap the dragged vertex to any other vertex on the same shape within a 10-px radius (zoom-aware). Useful for:

  • Closing an almost-closed polygon by snapping its end to its start.
  • Aligning a vertex precisely with another on the same shape.
Tip

Tip — Snap radius is in screen pixels, not document units, so it feels the same at any zoom.

Performance on Dense Shapes

Vertex handles are capped at 500 points. For a freehand stroke with thousands of points, Spark skips rendering per-vertex handles (too cluttered, slow). You can still move, resize, rotate, and insert / delete points — just no orange dots.

Interaction With Other Handles

You can mix-and-match:

  • Drag a corner handle → resize the whole shape (all vertices scale).
  • Drag the rotation handle → rotate all vertices around centre.
  • Drag an orange vertex handle → move just that one.
  • Drag the central move handle → move the whole shape.

All three types of drag record a separate undo entry.

Limits

  • You can't drag a vertex past a minimum bounds that would invert the shape geometry.
  • If the shape has only 2 vertices (line), both are editable — no "body handle" distinct from the endpoints.
  • Freehand vertex handles shown only for strokes under the 500-point limit.

Saving

Vertex-level changes save just like any other transform — the Points list on the annotation is updated, and the next Ctrl+S writes it to the PDF.

Visual Design

Orange on white stroke is deliberately different from the blue resize handles, so you can't confuse them on a dense shape. The orange radius is half the size of the resize handles (5 pt vs 8 pt) so handles don't overlap on short edges.