0

每次单击链接时,我都会尝试使用 EaselJS 调整画布的大小。我正在这样做:

function resizeCanvas(){
    console.log("Resizing...")
    stage.setTransform(0,0,1.5,1.5,1,1,1,1,1);

    stage.update();
}

但似乎它只调整了一次大小。文档说 setTransform 返回一个 DisplayObject:http ://www.createjs.com/Docs/EaselJS/classes/Stage.html#method_setTransform

这是否意味着它返回一个我应该分配给我的旧阶段变量的阶段对象?我怎样才能正确调整它的大小?

谢谢!

4

2 回答 2

1

setTransform() SETs给定值的转换属性,它不是add,进一步缩放的一种方法是将转换值保存在单独的变量/对象中,并在setTransform()使用它调用之前增加这些值。

但是,如果您只想缩放舞台并且不想单独保存值,您可以执行以下操作:

function resizeCanvas() {
    stage.scaleX *= 1.5;
    stage.scaleY *= 1.5;
    // but beware this is exponetial, maybe you want to use this linear method:
    // stage.scaleX/Y += 0.5;

    stage.update();
}
于 2013-04-07T17:57:19.250 回答
1

许多显示对象方法返回“this”,因此可以链接这些方法,例如:

container.addChild(new Bitmap(src).set({alpha:0.5}).setTransform(100,200));

于 2013-04-07T19:50:19.613 回答