导航
×
   ❮   
HTML CSS JavaScript PHP Go Sass W3C Colors ECMS

HTML canvas createImageData() 方法


实例

创建一个 100*100 像素的 ImageData 对象,其中每个像素都是红色

您的浏览器不支持 HTML5 canvas 标签。

JavaScript

const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");
const imgData = ctx.createImageData(100, 100);


for (let 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);
亲自试一试 »

描述

createImageData() 方法创建一个新的空白 ImageData 对象。新对象的像素值是透明黑色:RGBA(0, 0, 0, 0)。

ImageData 对象中的每个像素有四条信息,即 RGBA 值

R - 红色(0-255)
G - 绿色(0-255)
B - 蓝色(0-255)
A - Alpha 通道(0-255;0 表示透明,255 表示完全可见)

颜色/alpha 信息存储在一个数组中,其大小是 ImageData 对象的 4 倍:宽度*高度*4。

包含颜色/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() 方法有两个版本

创建具有指定尺寸的新 ImageData 对象

context.createImageData(width, height)

创建具有与另一个 ImageData 对象相同尺寸的新 ImageData 对象(不复制 ImageData 对象)

context.createImageData(imageData)

参数值

参数 描述
width 新 ImageData 对象的宽度(像素)
height 新 ImageData 对象的高度(像素)
imageData 另一个 ImageData 对象

返回值

一个 imageData 对象

浏览器支持

<canvas> 元素是 HTML5 标准(2014)。

createImageData() 支持所有现代浏览器

           
Chrome Edge Firefox Safari Opera IE
9-11

Copyright ©2020-2026 freew3c.com All Rights Reserved 提供的内容仅用于学习和测试,不保证内容的正确性。