代码之家  ›  专栏  ›  技术社区  ›  Unnamed

为什么easeljs的舞台。getBounds()返回null?

  •  2
  • Unnamed  · 技术社区  · 7 年前

    var canvas = document.getElementById("testCanvas");
    var stage = new createjs.Stage(canvas);
    
    function drawRectangle(){
     var rect = new createjs.Shape();
     rect.graphics.beginFill("#000").drawRect(10, 10, 100, 100);
     stage.addChild(rect);
    }
    
    function drawShapes(){
      drawRectangle();
    	stage.update();
    }
    
    drawShapes();
    // Why does this call log null?
    console.log(stage.getBounds());
    <script src="https://cdnjs.cloudflare.com/ajax/libs/EaselJS/0.8.0/easeljs.min.js"></script>
    <canvas id="testCanvas" width="600" height="150"></canvas>

    stage.getBounds(); 正在返回null。为什么返回null?根据 docs

    如果此用法不正确,那么获取对象尺寸的正确用法是什么?

    1 回复  |  直到 7 年前
        1
  •  5
  •   cristiancajiaos    7 年前

    看起来像是 阶段

    getBounds() documentation 出现以下情况:

    并非所有显示对象都可以计算自己的边界(例如形状)。对于这些对象,可以使用 setBounds

    如果是这样,正如文档所述,您可以使用 setBounds() documentation

    setBounds(x,y,width,height)
    

    stage.setBounds(0,0,600,150); // (0,0), at the same size of the canvas