2
我正在尝试创建一个相当复杂的SVG界面,由几个图形层组成。在SVG元素内拉伸特定图层
我想通过使用viewBox属性来调整浏览器窗口的大小时,拉伸一些图层(即SVG中的“g”元素)。同一个SVG中的其他图层应该分别缩放或处理。这就是我遇到问题的地方。
我本来希望能够做到以下几点:
<svg>
<g name="stretchable" width="900px" height="500px" viewBox="0px 0px 900px 500px">
...insert stretchable shapes here...
</g>
<g name="non-stretchable">
...insert other shapes here...
</g>
</svg>
...然后只拉伸“拉伸” G元素,通过操纵viewBox属性。但显然,viewBox属性不适用于g元素。
是否有任何其他方式来拉伸SVG中的特定“g”元素,而不必拉伸整个SVG?
优秀的解决方案!尤其是变换/缩放之一。我一直在使用比例尺,但总是认为它是一个单值属性(始终保持宽高比)。我没有意识到你可以添加两个值来获得拉伸行为。我已经计算了比例因子并进行了大量的变换字符串操作,因此我将选择transform =“scale(x,y)”的建议。当然,它的作用就如同元素上的魅力。万分感谢! – cosimo