0
我正在尝试创建一个将创建图像并在画布上绘制的对象。我不只是常规图像对象的原因是我想知道对象放置在画布上的鼠标操作的位置。在画布中创建自定义图像对象
这里是我的构造函数:
function DisplayImg(src, x, y, w, h) {
this.src = src;
this.x = x;
this.y = y;
this.w = w;
this.h = h;
}
我创建了一个平局功能,把它画到画布:
DisplayImg.prototype.draw = function(context) {
img = new Image();
img.src = this.src;
img.onload = function() {
context.drawImage(img,this.x,this.y,this.w,this.h);
}
}
我再进行API调用的Instagram和抓住一些照片的URL和把它们放在一个数组中。在这里,我试图循环访问该数组,并为每个数组创建一个对象,然后将其绘制到画布上。我可以console.log数据并看到图像src的,所以我知道数据在那里。这就是我所说的功能,一旦我得到的数据传回:
function draw() {
for (var i = 0; i < srcArr.length; i++) {
var src = srcArr[i];
x = Math.floor(Math.random()*8);
y = Math.floor(Math.random()*8);
var theImage = new DisplayImg(src,x,y,75,75);
theImage.draw(context);
}
}
我的日志返回正确的数据,但没有任何图像绘制在画布上。任何帮助是极大的赞赏。
感谢您的洞察力,我现在可以得到一些图像显示。 – dotfury 2012-08-16 16:25:13
很高兴我能帮到你。 – 2012-08-16 21:24:38