我正在尝试用Dart翻译SVG中的椭圆。除了SetAttribute方法之外,我没有找到任何有关此方法的解释
ellipse.setAttribute('transform', 'translate($acx, $acy)');
我发现EllipseElement具有这样的符号:
ellipse.transform.baseVal[...].setTranslate(acx,acy);
..但不起作用。我完全不确定setTranslate的工作方式,我想我必须告诉要翻译的元素,但我不知道如何翻译。
使用setATtribute而不是尝试使用其他方法更好吗?
最佳答案
我成功尝试了
ellipse.setAttribute('transform', 'translate(150, 150)');
如果您使用
transform
创建setAttribute
属性,则以下内容同样适用ellipse.transform.baseVal.first.setTranslate(20, 100);
或者您可以添加
Transform
,如该问题的答案所示Dart create and transform an SVG pathMatrix m = new svg.SvgSvgElement().createSvgMatrix();
Matrix m2 = m.translate(50, 50);
Transform tr = ellipse.transform.baseVal.createSvgTransformFromMatrix(m2);
ellipse.transform.baseVal.appendItem(tr);
您可以使用
ellipse.style.setProperty('fill', '#07f');
关于dart - Dart SVG转换对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20873601/