--- title: CanvasRenderingContext2D.getImageData() slug: Web/API/CanvasRenderingContext2D/getImageData translation_of: Web/API/CanvasRenderingContext2D/getImageData ---
CanvasRenderingContext2D
.getImageData()
返回一个{{domxref("ImageData")}}对象,用来描述canvas区域隐含的像素数据,这个区域通过矩形表示,起始点为(sx, sy)、宽为sw、高为sh。
ImageData ctx.getImageData(sx, sy, sw, sh);
sx
sy
sw
sh
一个{{domxref("ImageData")}} 对象,包含canvas给定的矩形图像数据。
IndexSizeError
getImageData
方法这是一段使用 getImageData
方法的简单的代码片段。 获取更多信息,请看 canvas像素控制 和 {{domxref("ImageData")}} 对象。
<canvas id="canvas"></canvas>
var canvas = document.getElementById("canvas"); var ctx = canvas.getContext("2d"); ctx.rect(10, 10, 100, 100); ctx.fill(); console.log(ctx.getImageData(50, 50, 100, 100)); // ImageData { width: 100, height: 100, data: Uint8ClampedArray[40000] }
Specification | Status | Comment |
---|---|---|
{{SpecName('HTML WHATWG', "scripting.html#dom-context-2d-getimagedata", "CanvasRenderingContext2D.getImageData")}} | {{Spec2('HTML WHATWG')}} |
{{Compat("api.CanvasRenderingContext2D.getImageData")}}
getImageData()
可以正确地接受超出canvas边界的矩形;canvas范围外的像素返回值是透明的,并且如果矩形小于一个像素,会返回至少一像素值的图像数据。