旋转后如何获取文本对象的坐标?

时间:2018-01-03 04:48:51

标签: javascript jquery svg text

我有一些文本标签是g标签的子标签。旋转文本标签后,我不知道如何获取文本对象的新坐标(例如:new x,new y,width,height)。

有没有办法计算旋转后文本对象的结束坐标?

如果有人知道请帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

Tex对象没有widthheight属性,所以我认为你的意思是你想要文本对象的边界框?

您说您的<text>对象有一个父<g>元素。因此,您可以在父组对象上调用getBBox()。这将返回文本对象的边界。当然,只要它是集团内部唯一的东西。

&#13;
&#13;
var group = document.getElementById("group");
var boundingBox = group.getBBox();
alert("x = " + boundingBox.x + "\n y = " + boundingBox.y + "\n width = " + boundingBox.width + "\n height = " + boundingBox.height);
&#13;
<svg width="200" height="200">
  <g id="group">
    <text x="0" y="20" transform="rotate(45,0,100)">Some text</text>
  </g>
</svg>
&#13;
&#13;
&#13;