我在更新画布时遇到问题。该代码托管在http://ssarangi.github.com/nombre/。问题是我正在加载一个红色图像,加载完成后,我将图像转换为黄色,并希望将其重新渲染到画布。getImageData不读取正确的值&putImageData不更新画布
// Turn to Yellow
function updateImage() {
// Update the image
var ctx = canvas2d.getContext("2d");
var width = canvas2d.width;
var height = canvas2d.height;
var pixels = ctx.getImageData(0, 0, width, height);
for (var x = 0; x < width; ++x) {
for (var y = 0; y < height; ++y) {
var offset = (y * width + x) * 4;
pixels.data[offset] = 0;
pixels.data[offset+1] = 255;
pixels.data[offset+2] = 255;
pixels.data[offset+3] = 255;
}
}
ctx.putImageData(pixels, 0, 0);
}
但是,ctx不更新像素。然而,在一个简单的html页面上做同样的事情对我来说确实很有用。这个例子虽然启用了WebGL。有人能指出我正确的方向吗? 谢谢。
你的链接给出了403禁止。请使用正确的URL编辑您的问题,或将您的代码放入JSFiddle。 – Bojangles 2012-03-22 01:53:37
这很奇怪。我可以从多台机器上访问它。即使从我的手机.. – ssarangi 2012-03-22 02:00:25
https://github.com/ssarangi/nombre - 希望你也能从这里看到问题。 – ssarangi 2012-03-22 02:08:54