HTML canvas createImageData() method
Paglilinaw at paggamit
createImageData()
Ang paraan ay gumawa ng bagong walang laman na ImageData object. Ang default na halaga ng pixel ng bagong object ay transparent black.
Para sa bawat pixel ng ImageData object, mayroong apat na pangunahing impormasyon, na ang RGBA na halaga:
- R - pulang (0-255)
- G - berde (0-255)
- B - asul (0-255)
- A - alpha 通道 (0-255; 0 ayon sa transparent, 255 ayon sa ganap na nakikita)
Kaya, ang transparent black ay (0,0,0,0).
color/alpha ay nasa anyo ng array, at dahil ang array ay naglalaman ng apat na impormasyon ng bawat pixel, ang laki ng array ay apat na beses na laki ng ImageData object. (May mas madaling paraan para makakuha ng laki ng array, na gumamit ng ImageDataObject.data.length)
Ang array na naglalaman ng color/alpha ay nakatago sa data property.
Mga paalala:Pagkatapos ng operasyon sa color/alpha ng array, maaari mong gamitin ang putImageData() Ang method na ito ay kumopya ng mga datos ng imahen pabalik sa canvas.
Halimbawa:
Ang sintaksis na ito ay nagbabago ng unang pixel ng ImageData object na pula:
imgData=ctx.createImageData(100,100); imgData.data[0]=255; imgData.data[1]=0; imgData.data[2]=0; imgData.data[3]=255;
Ang sintaksis na ito ay nagbabago ng ikalawang pixel ng ImageData object na pula:
imgData=ctx.createImageData(100,100); imgData.data[4]=0; imgData.data[5]=255; imgData.data[6]=0; imgData.data[7]=255;
Mga halimbawa
Lumikha ng 100*100 pixel na ImageData object kung saan ang bawat pixel ay pula, at ilagay ito sa 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);
Sintaksis
Mayroon dalawang bersyon ng createImageData() method:
1. สร้าง ImageData ตัวใหม่ด้วยขนาดที่กำหนด (ด้วยพิกเซล):
var imgData=context.createImageData(width,height);
2. สร้าง ImageData ตัวใหม่ขนาดเท่ากับ ImageData ตัวอื่นที่กำหนด (จะไม่คัดลอกข้อมูลรูปภาพ):
var imgData=context.createImageData(imageData);
ค่าประกาย
ประกาย | คำอธิบาย |
---|---|
width | ความกว้างของ ImageData ตัว ด้วยพิกเซล |
height | ความสูงของ ImageData ตัว ด้วยพิกเซล |
imageData | อีก ImageData ตัว |
การสนับสนุนโปรแกรมนี้
ตัวเลขในตารางนี้ระบุรุ่นที่สนับสนุนคุณสมบัตินี้เต็มที่แรก
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
หมายเหตุ:Internet Explorer 8 และรุ่นเก่าของมันไม่สนับสนุนสิ่งที่ชื่อว่า <canvas> อิเล็กทรอนิกส์