所以我有一个javascript / html5页面,它对图像进行了一些繁重的操作。因为它们很重,所以我想在一个线程中执行这些操作,我使用getImageData().data将图像数据提取到核心。然后,内核执行所有操作,并传回得到的像素信息数组。现在,回到主线程中,我希望将结果放回图像中,我通过使用(var imgData = getImageData(...))从图像中加载来创建一个新的ImageData对象。然后,我想用从第二个线程获得的数据替换ImageData对象中的数据。但是imgData.data = newData什么也不做。除了逐个元素遍历数据数组元素之外,还有什么方法可以做到这一点吗?
发布于 2017-03-07 12:01:14
不能直接赋值给imgData.data,需要使用:
imgData.data.set(newData)发布于 2015-10-13 06:42:38
尝试:.putImageData(newData,x,y);
发布于 2020-06-16 13:59:25
imageData是只读属性(https://developer.mozilla.org/en-US/docs/Web/API/ImageData/data)
https://stackoverflow.com/questions/33091332
复制相似问题