HTML canvas ImageData data 属性
实例
创建一个 100*100 像素的 ImageData 对象,其中每个像素都设置为红色:
Canvas
JavaScript:
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var imgData = ctx.createImageData(100, 100);
for (var i = 0; i < imgData.data.length; i += 4) {
imgData.data[i+0] = 255;
imgData.data[i+1] = 0;
imgData.data[i+2] = 0;
imgData.data[i+3] = 255;
}
ctx.putImageData(imgData, 10, 10);
亲自试一试 »
浏览器支持
表中的数字表示支持该属性的第一个浏览器版本。
属性 | |||||
---|---|---|---|---|---|
data | 4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
定义和用法
data 属性返回一个包含指定 ImageData 对象的图像数据的对象。
对于 ImageData 对象中的每个像素,都有四个信息,即 RGBA 值:
R - 红色(0-255)
G - 绿色(从 0-255)
B - 蓝色(从 0-255)
A - alpha 通道(从 0-255;0 是透明的,255 是完全可见的)
color/alpha 信息保存在一个数组中,并存储在 ImageData 对象的 data 属性中。
示例:
使 ImageData 对象中的第一个像素变为红色的语法:
imgData = ctx.createImageData(100, 100);
imgData.data[0] = 255;
imgData.data[1] = 0;
imgData.data[2] = 0;
imgData.data[3] = 255;
使 ImageData 对象中的第二个像素变为绿色的语法:
imgData = ctx.createImageData(100, 100);
imgData.data[4] = 0;
imgData.data[5] = 255;
imgData.data[6] = 0;
imgData.data[7] = 255;
提示: 查看createImageData(), getImageData(),以及 putImageData() 了解更多关于 ImageData 对象。
JavaScript 语法
JavaScript 语法: | imageData.data; |
---|
❮ Canvas 对象