微信小游戏报ImageData is not defined

发布到facebook和web上是正常的,但是发布到微信小游戏上提示报错
ImageData is not defined

截图:

源码函数如下:

引擎版本为1.10.2

求教!!!

ctx.getImageData

本人新手菜鸟,请问具体怎么改?

在WEBGL上是读取像素值的,getImageData是取画布图片的某块区域的,不知道怎么修改?

版本改为2.0.4,问题同样存在,求解决

let imagedata = ctx.getImageData(0, 0, width, height);
const len = width * height * 4;
for (let i = 0; i < len; i++) {
    imagedata.data[i] = data[i];
}
ctx.putImageData(imagedata, 0, 0);

这个ImageData的对象的属性全部都是readonly,也没有任何方法

求大大解决

提供一份能复现问题的demo 我们一起看下这个问题

let imageData = ctx.createImageData(canvas.width, canvas.height);

imageData.data 是只读的,但是可以为每个元素赋值。

const len = width * height * 4;
for (let i = 0; i < len; i++) {
imagedata.data[i] = data[i];
}
ctx.putImageData(imagedata, 0, 0);

这段不能省

亲测可以,我截图就这么做的

谢谢官方大大的及时回复,问题已经解决了

说到重点了

现在把解决方案放出来,如果用到了new ImageData在微信上是不兼容的,
最终解决方案:

其他论坛上推荐的大部分写法new ImageData在微信上是有兼容性问题的

2赞