HTML canvas putImageData() 方法

定義和用法

putImageData() 方法將圖像數據(從指定的 ImageData 對象)放回畫布上。

提示:請參閱 getImageData() 方法,它可復制畫布上指定的矩形的像素數據。

提示:請參閱 createImageData() 方法,它可創建新的空白 ImageData 對象。

實例

下面的代碼通過 getImageData() 復制畫布上指定矩形的像素數據,然后通過 putImageData() 將圖像數據放回畫布:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.fillStyle="green";
ctx.fillRect(10,10,50,50);
function copy()
{
var imgData=ctx.getImageData(10,10,50,50);
ctx.putImageData(imgData,10,70);
}

親自試一試

語法

context.putImageData(imgData,x,y,dirtyX,dirtyY,dirtyWidth,dirtyHeight);

參數值

參數 描述
imgData 規定要放回畫布的 ImageData 對象。
x ImageData 對象左上角的 x 坐標,以像素計。
y ImageData 對象左上角的 y 坐標,以像素計。
dirtyX 可選。水平值(x),以像素計,在畫布上放置圖像的位置。
dirtyY 可選。水平值(y),以像素計,在畫布上放置圖像的位置。
dirtyWidth 可選。在畫布上繪制圖像所使用的寬度。
dirtyHeight 可選。在畫布上繪制圖像所使用的高度。

瀏覽器支持

表中的數字注明了首個完全支持該屬性的瀏覽器版本。

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
4.0 9.0 3.6 4.0 10.1

注釋:Internet Explorer 8 以及更早的版本不支持 <canvas> 元素。