我知道SVG的动画功能,但是有没有办法轻松地将图片组合成动画,比如动画GIF?例如,在圆圈之间循环,
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" cy="50" r="40" stroke="black"
stroke-width="2" fill="red"/>
</svg>
和一个矩形,
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<rect width="300" height="100"
style="fill:rgb(0,0,255);stroke-width:1;stroke:rgb(0,0,0)"/>
</svg>
答案 0 :(得分:2)
如果这就是你所追求的效果,那么你可能会淡入和淡出alpha值。即淡出圆圈并同时淡出矩形,反之亦然。
使用JavaScript可能需要将实际形状从一个变换到另一个。
答案 1 :(得分:1)
如果您的SVG将在Web浏览器中查看,您可以通过使用JavaScript操作节点来为其设置动画。我的"web site"就是一个例子。
答案 2 :(得分:1)
如果您使用path
元素而不是基本矩形和圆形元素,则可以使用路径变形使用SVG动画将一个形状变形为另一个形状。
非常好example of this at carto.net。
根据您的使用案例,此解决方案可能存在一些缺点。放入动画中的“图片”不仅需要是路径元素,还有一些更多的约束,例如路径元素需要具有相同数量的顶点,并且它们需要具有相同的类型。