ล่าสุดการพัฒนาเว็บบทเรียน
×

HTML การอ้างอิง

HTML ตามลำดับตัวอักษร (เรียงลำดับ) HTML ตามหมวดหมู่ (เรียงลำดับ) HTML แอตทริบิวต์ HTML แอตทริบิวต์ทั่วโลก HTML เหตุการณ์ HTML ผ้าใบ HTML เสียง / วิดีโอ HTML doctypes HTML เข้ารหัส URL HTML รหัสภาษา HTML รหัสประเทศ HTTP ข้อความ HTTP วิธีการ PX จะ EM แปลง แป้นพิมพ์ลัด


 

HTML canvas getImageData() Method

<html ผ้าใบอ้างอิง

ตัวอย่าง

โค้ดข้างล่างนี้คัดลอกข้อมูลพิกเซลสำหรับสี่เหลี่ยมที่ระบุบนผืนผ้าใบด้วย getImageData() และจากนั้นนำข้อมูลภาพกลับไปยังผืนผ้าใบด้วย putImageData() :

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.fillStyle="red";
ctx.fillRect(10,10,50,50);

function copy()
{
var imgData=ctx.getImageData(10,10,50,50);
ctx.putImageData(imgData,10,70);
}
ลองตัวเอง»

สนับสนุนเบราว์เซอร์

ตัวเลขในตารางระบุราว์เซอร์รุ่นแรกที่สนับสนุนอย่างเต็มที่วิธีการ

วิธี
getImageData() ใช่ 9.0 ใช่ ใช่ ใช่

ความหมายและการใช้งาน

getImageData() วิธีการส่งกลับวัตถุ ImageData ที่คัดลอกข้อมูลพิกเซลสำหรับสี่เหลี่ยมที่ระบุบนผืนผ้าใบ

หมายเหตุ: วัตถุ ImageData ไม่ได้เป็นภาพจะระบุส่วน (สี่เหลี่ยมผืนผ้า) บนผืนผ้าใบและเก็บข้อมูลของทุกพิกเซลภายในสี่เหลี่ยมผืนผ้า

สำหรับพิกเซลในวัตถุ ImageData ทุกมีสี่ชิ้นส่วนของข้อมูลค่า RGBA นี้:

R - สีแดง (0-255)
G - สีเขียว (0-255)
B - สีฟ้า (0-255)
- ช่องอัลฟา (0-255; 0 มีความโปร่งใสและสามารถมองเห็นได้ 255 เต็ม)

ข้อมูลสี / อัลฟาจะจัดขึ้นในอาร์เรย์และถูกเก็บไว้ใน data คุณสมบัติของวัตถุ ImageData

เคล็ดลับ: หลังจากที่คุณได้จัดการข้อมูลสี / อัลฟาในอาร์เรย์คุณสามารถคัดลอกข้อมูลภาพกลับไปยังผืนผ้าใบที่มี putImageData() วิธีการ

ตัวอย่าง:

รหัสสำหรับการรับข้อมูลสี / อัลฟาของพิกเซลในวัตถุ ImageData กลับมาว่า:

red=imgData.data[0];
green=imgData.data[1];
blue=imgData.data[2];
alpha=imgData.data[3];
ลองตัวเอง»

เคล็ดลับ: คุณยังสามารถใช้ getImageData() วิธีการสลับสีของพิกเซลของภาพทุกคนบนผืนผ้าใบ

ห่วงผ่านพิกเซลทั้งหมดและเปลี่ยนค่าสีโดยใช้สูตรนี้

red=255-old_red;
green=255-old_green;
blue=255-old_blue;

ดูด้านล่างสำหรับการ "ลองมันเอง" ตัวอย่าง!


JavaScript ไวยากรณ์

ไวยากรณ์ javascript: context.getImageData(x,y,width,height);

ค่าพารามิเตอร์

พารามิเตอร์ ลักษณะ
x พิกัด x (พิกเซล) ของมุมซ้ายบนจะเริ่มต้นจากการคัดลอก
y พิกัด y (พิกเซล) ของมุมซ้ายบนจะเริ่มต้นจากการคัดลอก
width ความกว้างของพื้นที่สี่เหลี่ยมที่คุณจะคัดลอก
height ความสูงของพื้นที่สี่เหลี่ยมที่คุณจะคัดลอก

ตัวอย่างเพิ่มเติม

ภาพที่จะใช้:

กรี๊ด

ตัวอย่าง

ใช้ getImageData() เพื่อกลับสีของพิกเซลของภาพบนผืนผ้าใบทุกนี้:

YourbrowserdoesnotsupporttheHTML5canvastag

javascript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var img=document.getElementById("scream");
ctx.drawImage(img,0,0);
var imgData=ctx.getImageData(0,0,c.width,c.height);
// invert colors
for (var i=0;i<imgData.data.length;i+=4)
  {
  imgData.data[i]=255-imgData.data[i];
  imgData.data[i+1]=255-imgData.data[i+1];
  imgData.data[i+2]=255-imgData.data[i+2];
  imgData.data[i+3]=255;
  }
ctx.putImageData(imgData,0,0);
ลองตัวเอง»

<html ผ้าใบอ้างอิง