طريقة createImageData() لـ Canvas
التعريف والاستخدام
createImageData()
قاعدة بيانات لإنشاء عمود ImageData جديد فارغ. القيمة الافتراضية للبكسل الجديد هي الأسود الشفاف.
للمعلومات الأربعة الموجودة لكل بكسل في عمود ImageData، هناك قيم RGBA:
- R - الأحمر (0-255)
- G - الأخضر (0-255)
- B - الأزرق (0-255)
- A - قناة alpha (0-255; 0 هو شفاف، 255 هو مرئي بالكامل)
لذلك، الأسود الشفاف يمثل (0,0,0,0).
color/alpha موجودة بشكل مجموعة، وكون المجموعة تحتوي على أربعة معلومات لكل بكسل، فإن حجم المجموعة هو أربعة أضعاف حجم عمود ImageData. (هناك طريقة أكثر بسيطة للحصول على حجم المجموعة، وهي استخدام ImageDataObject.data.length)
مجموعة تحتوي على معلومات color/alpha تُخزن في عمود ImageData. data في الخاصية.
إشارة:في إتمام عملية معلومات color/alpha في المجموعة، يمكنك استخدام putImageData() يكرر هذا البرنامج النصوص على اللوحة.
مثال:
هذه القواعد تغير البكسل الأول في ImageData object إلى اللون الأحمر:
imgData=ctx.createImageData(100,100); imgData.data[0]=255; imgData.data[1]=0; imgData.data[2]=0; imgData.data[3]=255;
هذه القواعد تغير البكسل الثاني في ImageData object إلى اللون الأحمر:
imgData=ctx.createImageData(100,100); imgData.data[4]=0; imgData.data[5]=255; imgData.data[6]=0; imgData.data[7]=255;
مثال
أنشئ ImageData object مقاسه 100*100 بكسل، حيث يكون كل بكسل أحمر، ثم أضعه على اللوحة.
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);
القواعد
هناك نسختان من method createImageData():
1. أنشئ ImageData object جديد بناءً على حجم المحدد (بالبكسل):
var imgData=context.createImageData(width,height);
2. أنشئ ImageData object جديد بنفس حجم ImageData object المحدد (بدون نسخ بيانات الصورة):
var imgData=context.createImageData(imageData);
قيمة المعلمات
المعلمات | وصف |
---|---|
width | عرض ImageData object، مقاسها بالبكسل. |
height | ارتفاع ImageData object، مقاسها بالبكسل. |
imageData | مثل ImageData object آخر. |
دعم المتصفحات
الرقم في الجدول يشير إلى إصدار أولي يدعم هذه الخاصية من المتصفح.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
ملاحظة:Internet Explorer 8 وأحدث إصداراته لا يدعم عنصر <canvas>.