Javascript 从<;获取字节[];帆布>;

Javascript 从<;获取字节[];帆布>;,javascript,html,canvas,Javascript,Html,Canvas,我有一个html画布,如下所示: //output is a base64string of image data var oldImage = new Image(); oldImage.onload = function () { var resizeRatio = oldImage.width / 500; var height = oldImage.height / 2; }; oldImage.src = output; var standardizedCanvas = doc

我有一个html画布,如下所示:

//output is a base64string of image data
var oldImage = new Image();
oldImage.onload = function () {
  var resizeRatio = oldImage.width / 500;
  var height = oldImage.height / 2;
};
oldImage.src = output;
var standardizedCanvas = document.createElement("canvas");
standardizedCanvas.setAttribute("width", "500px");
standardizedCanvas.setAttribute("height", height + "px");
standardizedCanvas.getContext("2d").drawImage(oldImage, 0, 0, frontCanvas.width, frontCanvas.height);

所以我可以把图像读入画布,然后得到图像数据。但这到底给了我什么?我需要从画布中获取一个
byte[]
,其中包含图像数据,因此我确实希望将
base64
字符串转换为
byte[]
。我是在正确的轨道上,还是……?

调用
getImageData
返回一个
ImageData
对象

文件:

ImageData
对象的
data
属性是长度为4*宽度*高度的字节数组


像素一次从左上到右下排列一行,每个像素由4个字节表示,红色、绿色、蓝色和alpha。

重复?我不知道你想做什么?一般来说,
.getImageData(0,0,canvas.width,canvas.height)
是一种获取包含画布上每个像素的红色、绿色、蓝色和alpha值的数组的方法。下面是前面的答案,解释像素阵列的格式: