0
私はeaselJSを初めて使っていて、画像を長方形の中に収めようとしていました。 x、yは設定できますが、幅と高さは設定できません。適切なアプローチは何ですか?easelJSで矩形の内側に画像を合わせる
var stage = new createjs.Stage("canvas");
var layoutWidth = 0.8 * stage.canvas.width;
var layoutHeight = 0.6 * stage.canvas.height;
var layoutRect = new createjs.Shape();
layoutRect.graphics.beginStroke("black").drawRect((stage.canvas.width - layoutWidth)/2, (stage.canvas.height - layoutHeight)/2, layoutWidth, layoutHeight);
var imageContainer = new createjs.Shape();
imageContainer.graphics.beginStroke("black").drawRect((stage.canvas.width - layoutWidth)/2 + (layoutWidth - 0.25 * layoutWidth)/2, (stage.canvas.height - layoutHeight)/2 + 0.1 * layoutHeight, 0.25 * layoutWidth, 0.25 * layoutWidth);
var image = new createjs.Bitmap("pizza.jpg");
image.x = (stage.canvas.width - layoutWidth)/2 + (layoutWidth - 0.25 * layoutWidth)/2;
image.y = (stage.canvas.height - layoutHeight)/2 + 0.1 * layoutHeight;
stage.addChild(layoutRect, imageContainer, image);
stage.update();
イメージコンテナ内にイメージを配置したいと考えています。
これは正しい考えですが、代わりにソースイメージではなくビットマップをスケーリングすることをお勧めします。これにより、物が変更されたときにサイズをより細かく制御できるようになり、毎回元のサイズの画像を使用することができます。ここでは、「フィット」と「塗りつぶし」のスケールを切り替える更新されたスパイクがあります。 containerBoundsを使用するのではなく、単にCanvas要素の縮尺と中心になります。 http://jsfiddle.net/lannymcnie/7mt9nzbp/ – Lanny