我有一个包含位图的Uint8ClampedArray
。下面的代码可以工作,但我想避免复制缓冲区,据我了解ImageData.set
会复制ArrayBuffer。
var mappedBuffer = new Uint8ClampedArray(Module.HEAPU8.buffer, offset, length); // Creates a view on the emscripten heap
var imageData = ctx.createImageData(width, height);
imageData.data.set(mappedBuffer); // copy here
ctx.putImage(imageData, 0, 0);
有没有什么方法可以避免复制,这样我们就可以直接在画布上绘制而不需要先复制呢?