我想将 svg 组的中心平移到其左上角:
代替:
+-----------------+ x-----------------+
| | | |
| | | |
| | | |
| x | ----> | |
| | | |
| | | |
| | | |
+-----------------+ +-----------------+
因此,对于以下 svg:
<svg width="900" height="900">
<g transform="translate(200,300)">
<rect width="400" height="500"></rect>
</g>
</svg>
The rect
元素应该位于绝对位置:0, 50
(200 - 400 / 2
, 300 - 500 / 2
).
我知道我可以设置x
and y
属性为rect
元素 (<rect width="400" height="500" x="-200" y="-250"></rect>
),但这或多或少是一个黑客,因为真正的中心g
没有改变。
改变中心的正确方法是什么<g>
SVG 元素?
rect {
fill: red;
}
<svg width="900" height="900">
<g transform="translate(200,300)">
<rect width="400" height="500" x="-200" y="-250"></rect>
</g>
</svg>
也许这对你有用translate
?
rect {
fill: red;
}
<svg width="900" height="900">
<g transform="translate(200,300)">
<g transform="translate(-200, -250)">
<rect width="400" height="500"></rect>
</g>
</g>
</svg>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)