SVG 1.1不支持此功能。SVG 1.2确实具有
textarea自动换行的元素,但并非在所有浏览器中都实现。SVG 2
并未计划实现
textarea,但确实具有自动包装的文本。
但是,鉴于您已经知道换行应在何处发生,可以将文本分成多个
<tspan>,每个都带有
x="0"和
dy="1.4em"来模拟实际的文本行。例如:
<g transform="translate(123 456)"><!-- replace with your target upper left corner coordinates --> <text x="0" y="0"> <tspan x="0" dy="1.2em">very long text</tspan> <tspan x="0" dy="1.2em">I would like to linebreak</tspan> </text></g>
当然,由于要使用Javascript进行操作,因此必须手动创建每个元素并将其插入DOM。



