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

JavaScript การอ้างอิง

ภาพรวม

JavaScript

JS เชือก JS จำนวน JS ผู้ประกอบการ JS งบ JS คณิตศาสตร์ JS วันที่ JS แถว JS บูลีน JS นิพจน์ทั่วไป JS สถานการณ์โดยรวม JS การแปลง

เบราว์เซอร์ BOM

Window Navigator Screen History Location

HTML DOM

DOM เอกสาร DOM องค์ประกอบ DOM แอตทริบิวต์ DOM เหตุการณ์ DOM รูปแบบ

HTML วัตถุ

<a> <abbr> <address> <area> <article> <aside> <audio> <b> <base> <bdo> <blockquote> <body> <br> <button> <canvas> <caption> <cite> <code> <col> <colgroup> <datalist> <dd> <del> <details> <dfn> <dialog> <div> <dl> <dt> <em> <embed> <fieldset> <figcaption> <figure> <footer> <form> <head> <header> <h1> - <h6> <hr> <html> <i> <iframe> <img> <ins> <input> button <input> checkbox <input> color <input> date <input> datetime <input> datetime-local <input> email <input> file <input> hidden <input> image <input> month <input> number <input> password <input> radio <input> range <input> reset <input> search <input> submit <input> text <input> time <input> url <input> week <kbd> <keygen> <label> <legend> <li> <link> <map> <mark> <menu> <menuitem> <meta> <meter> <nav> <object> <ol> <optgroup> <option> <output> <p> <param> <pre> <progress> <q> <s> <samp> <script> <section> <select> <small> <source> <span> <strong> <style> <sub> <summary> <sup> <table> <td> <th> <tr> <textarea> <time> <title> <track> <u> <ul> <var> <video>

วัตถุอื่น ๆ

CSSStyleDeclaration


 

HTML canvas getImageData() Method

<ผ้าใบวัตถุ

ตัวอย่าง

โค้ดข้างล่างนี้คัดลอกข้อมูลพิกเซลสำหรับสี่เหลี่ยมที่ระบุบนผืนผ้าใบด้วย 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() 4.0 9.0 3.6 4.0 10.1

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

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

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

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

R - สีแดง (from 0-255)
G - สีเขียว (from 0-255)
B - สีฟ้า (from 0-255)
เอ - ช่องอัลฟา (from 0-255; 0 is transparent and 255 is fully visible)

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

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

Example:

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

red=imgData.data[0];
green=imgData.data[1];
blue=imgData.data[2];
alpha=imgData.data[3];

ลองตัวเอง

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

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

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

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


JavaScript ไวยากรณ์

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

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

พารามิเตอร์ ลักษณะ
x พิกัด x (in pixels) ของมุมซ้ายบนจะเริ่มต้นจากการคัดลอก
y พิกัด y (in pixels) ของมุมซ้ายบนจะเริ่มต้นจากการคัดลอก
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);
ลองตัวเอง»

<ผ้าใบวัตถุ