在SVG中旋转文本

时间:2015-04-29 12:08:06

标签: xml svg rotation scale scaletransform

我的svg图表看起来像Chart

现在我想像Chart

那样旋转文字

我的SVG root如下

<svg xmlns="http://www.w3.org/2000/svg"
    xmlns:xlink="http://www.w3.org/1999/xlink"
    xmlns:ev="http://www.w3.org/2001/xml-events"
    version="1.1" baseProfile="full"
    viewbox="-75 0 1075 800"
    transform="translate(0, 750) scale(1, -1)"
    width="1000" height="800">
</svg>

如果我尝试用

旋转文本
<text x="-70" y="50%" stroke="blue" transform="rotate(90)">U [mV]</text>

文字消失了。

使用

<text x="-70" y="50%" stroke="blue" transform="rotate(90 -70 50%)">U [mV]</text>
没有任何反应。

如何旋转第二张图片中显示的三个文本对象?感谢。

1 个答案:

答案 0 :(得分:0)

以下对我有用:

<svg xmlns="http://www.w3.org/2000/svg"
    xmlns:xlink="http://www.w3.org/1999/xlink"
    xmlns:ev="http://www.w3.org/2001/xml-events"
    version="1.1" baseProfile="full"
    viewbox="-75 0 1075 800"
    width="1000" height="800">

    <g transform="translate(0, 750) scale(1, -1)"> <!-- hint from @altocumulus -->
        ...

        <g transform="translate(-75, 375) scale(1, -1) rotate(-90)">
            <!--
                translate(x, y) => create a new local coordination system
                with the point of origin at this point
            -->

            <text stroke="blue">U [mV]</text>
        </g>

        ...
    </g>
</svg>