【问题标题】:Change scale of raphael js path改变raphael js路径的比例
【发布时间】:2012-01-07 20:46:23
【问题描述】:

我正在尝试用多条路径缩放 raphael 纸,但它无法正确缩放。有些部分比其他部分小。 例如,如果我尝试缩放老虎示例 (http://raphaeljs.com/tiger.html),老虎不会正确缩放,只能缩放老虎的某些部分。

谢谢!

这是我正在使用的代码:

<html>
<head>
<script src="raphael-min.js" type="text/javascript" charset="utf-8"></script>
<script src="tiger.js" type="text/javascript" charset="utf-8"></script>

<script>
    window.onload = function () {
        var r = Raphael(tiger).scale(0.5,0.5);
    };
</script>
</head>
<body>

</body>
</html>

【问题讨论】:

  • 请添加一些示例代码来展示你在做什么。
  • 这是 Raphael 1.x 还是 2.x?
  • 我正在使用 Raphael 2.x,我刚刚添加了我正在使用的代码。谢谢

标签: svg raphael


【解决方案1】:

Paper 对象没有缩放方法,因此您必须遍历纸上的所有对象才能缩放它们。我还发现每个对象的缩放效果不如使用变换:

window.onload = function () {
  var paper = Raphael(tiger);
  var tfm = 'S0.5,0.5,0,0';

  paper.forEach(function(obj){
   obj.transform(tfm);
  });
};

【讨论】:

  • 如果将这些形状放入Paper.set() 然后更改集合转换,则无需遍历所有形状,例如:var set = paper.set([ myCircle, myRect, ...etc]); set.transform("t100 0"); 并且,为了“缩放”a您可能会使用Paper.setViewBox() 方法的纸张对象。
猜你喜欢
  • 2013-08-29
  • 1970-01-01
  • 2015-10-14
  • 1970-01-01
  • 1970-01-01
  • 2012-10-12
  • 1970-01-01
  • 2014-06-24
  • 1970-01-01
相关资源
最近更新 更多