除了标题不完全正确之外,我在使用createJs绘制正方形时遇到问题。我正在绘制具有相同大边的矩形,这通常会产生一个正方形,但不适合我,我得到了这个:
我正在使用的代码如下(非常简化):
function getRandomNumber(max)
{
return Math.floor(Math.random() * max);
}
var colors = ["Red", "Green", "Blue"];
function createTileArea()
{
var stage = new createjs.Stage("tileArea");
stage.name = "stage";
var size = 50;
for (row = 0; row < 10; row++) {
for (col = 0; col < 10; col++) {
var id = row + "_" + col;
var color = colors[getRandomNumber(3)];
var tile = new createjs.Shape();
tile.graphics.beginFill(color);
tile.graphics.drawRect(0, 0, size, size);
tile.graphics.endFill();
tile.x = col * size;
tile.y = row * size;
tile.height = size;
tile.width = size;
tile.name = id;
stage.addChild(tile);
}
}
stage.update();
}
createTileArea();
我有一个小提琴:http://jsfiddle.net/QWP3Z/2/
我的问题是:我有一个500px宽度和高度的画布,我生成10个50px高和宽的矩形,为什么我得到6个水平方块和3个垂直方块这些都是矩形? 这是某种缩放问题吗?
答案 0 :(得分:5)
不要使用css样式来调整画布大小,而是直接在html或代码中更改其宽度和高度。 否则createJs将设置宽度和高度,这似乎默认为300X150,并且css将充当缩放以将其放回到 - 在您的示例中 - 500X500。