0

可能重复:
如何通过转换和矩阵获取 SVG 中元素的实际 x/y 位置

我需要获取在 SVG 中这样编写的元素的 x/y 位置:

<image
   y="-421.28461"
   x="335.27295"
   id="image2991"
   xlink:href="file:///C:/Users/tom/Documents/t.jpg"
   height="369"
   width="360"
   transform="matrix(0.22297057,0.97482518,-0.97482518,0.22297057,0,0)" />

这里给出了x&y属性,但这并没有给出图像的实际位置。据我所知

变换矩阵[a,b,c,d,e,f] e&f分别给出 x 和 y 的平移轴。但是

问题是这里( e & f )都是 0。现在我可以得到这个图像的实际值吗xy

4

1 回答 1

5

假设,

x="335.27295"
y="-421.28461"

给定变换矩阵

a              b          e
c              d          f
0              0          1

拥有价值观

0.22297057     0.97482518 0
-0.97482518    0.22297057 0
0              0          1

会心

  • a, d 负责分别缩放 x, y
  • e, f 分别负责转换 x, y

你最终会得到

newX = x * a + e
newY = y * d + f

或者,

newX = 335.27295 * 0.22297057 + 0 = 74.75
newY = -421.28461 * 0.22297057 + 0 = -93.93
于 2012-07-18T07:21:37.230 回答