SVG <textPath>: stretch, fixed paint & text bounds

method="stretch" bends each glyph's outline along the path instead of only turning it. A gradient on curved text stays fixed in the text's space (userSpaceOnUse) or spans the whole text (objectBoundingBox), and an objectBoundingBox clip-path on <text> uses the text's own bounds. Outlined text still carries invisible text, so it stays selectable.

HHHH
method="align" (default): rigid glyphs
HHHH
method="stretch": glyphs bent along the curve
Bent text
stretch with a stroke and side="right"
Colour stays put around the ring
userSpaceOnUse gradient: fixed across the curve
One gradient across it all
objectBoundingBox gradient: spans the whole text
Clipped
objectBoundingBox clip-path on text