下面代码,期望绘制蓝色,最终展示为红色
let length = 600 * 600 * 4;
let buffer = new Uint8Array(length);
for (let index = 0; index < length; ) {
buffer[index] = 0x00; //R
buffer[index + 1] = 0x00; //G
buffer[index + 2] = 0xff; //B
buffer[index + 3] = 0xff; //A
index = index + 4;
}
let opts: image.InitializationOptions = {
pixelFormat: image.PixelMapFormat.RGBA_8888,
size: {
height: 600,
width: 600
}
}
image.createPixelMap(buffer.buffer, opts).then((pixelMap) => {
this.context.drawImage(pixelMap, 0, 0);
})
手动将R、B位置交换可以解决