我有一个问题可能很好理解坐标如何工作SVG.我有一个
javascript函数,可以缩放svg图形,例如:
var g = document.getElementById("graph"); var nm = g.getCTM().multiply(k); //k is the scale factor g.setAttribute("transform","matrix(" + nm.a + "," + nm.b + "," + nm.c + "," + nm.d + "," + nm.e + "," + nm.f + ")");
关键是在缩放后,中心略微翻译,因此图形丢失是“地理”中心.如何确定我需要哪个翻译来“围绕”其中心缩放图形?
谢谢.
解决方法
你考虑过其他方法吗?
如果你只是想在svg上放大/缩小,可能更容易做到不同,例如:
http://www.cyberz.org/blog/2009/12/08/svgpan-a-javascript-svg-panzoomdrag-library/
我前一段时间遇到了同样的问题,最后用这个创建了自己的缩放:https://github.com/rstacruz/jquery.transit
你基本上使用css转换比例为svg包装和svg很好地调整.您甚至可以为缩放设置动画.