1

kinetic.js 图层对象是否缩放其宽度?

在缩放整个图层并尝试通过 getWidth() 方法获取宽度后,我得到了我在图层实例化上设置的内容。这是故意的 kinetic.js 行为吗?

http://jsfiddle.net/qHmZz/

var stage = new Kinetic.Stage({
    container : 'container',
    width: 300,
    height: 300
});

var layer = new Kinetic.Layer({
    width: 300,
    height: 300
});

var circle = new Kinetic.Circle({
        x: 150,
        y: 150,
        radius: 30,
        fill: 'green',
});

layer.add(circle);

stage.add(layer);

$('#message').append( 'width before scale: ' + layer.getWidth() + "</br>");
// 300

layer.setScale(0.9);
layer.draw();

$('#message').append('width after scale: ' + layer.getWidth());
//300
4

1 回答 1

1

是的,这是预期的行为。

如果你想要缩放宽度:

$('#message').append('width after scale: ' + layer.getWidth() * layer.getScale().x);

http://jsfiddle.net/qHmZz/2/

于 2013-03-04T23:59:25.680 回答