0

我想沿我的 SVG 路径对齐文本,但是,似乎 SVG 不想将其对齐到行上方并正确旋转所有字母:

沿着我的路径发短信

如何在曲线上方对齐文本,使其可读,而不像上图那样?

我使用Snap.SVG库进行 SVG 操作,我的代码如下所示:

var path = snapelement.path("M 540,0 S 150, 460, 150, 540")
           .attr({fill : "transparent", stroke : "#000", strokeWidth : 4})

var note = snapelement.text(0, 0, "EXAMPLE TEXT")
           .attr({"textpath" : path, "font-family" : "Helvetica Neue", "font-size" : 14});

任何建议,甚至是纯 SVG 解决方案,都值得赞赏。

4

1 回答 1

2

只需反转绘制路径的方向即可。如果这样做,文本将位于行的另一侧。

在这种情况下,您使用的是没有先前路径段的“S”路径命令,因此计算反向路径有点棘手。这是您的示例路径的反面:

var path = snapelement.path("M 150,540 C 150,540, 150,460, 540,0")
于 2014-05-14T00:18:55.400 回答