Canvas ตัวแปร globalCompositeOperation
การกำหนดและการใช้งาน
globalCompositeOperation
การตั้งค่าหรือกลับค่าของตัวแปรเพื่อกำหนดวิธีการวาดภาพต้นแบบ (ใหม่) บนภาพเป้าหมาย (มีอยู่แล้ว)
ภาพต้นแบบ = ภาพวาดที่คุณตั้งใจที่จะวางบนกระดานวาด
ภาพเป้าหมาย = ภาพวาดที่คุณได้ทำการวางบนกระดานวาด
ตัวอย่าง
ตัวอย่าง 1
วาดสี่เหลี่ยมผืนผ้าด้วยค่า globalCompositeOperation ต่างกัน สี่เหลี่ยมผืนผ้าสีแดงคือภาพเป้าหมาย สี่เหลี่ยมผืนผ้าสีสีน้ำเงินคือภาพต้นแบบ:
source-over destination-over
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.fillStyle="red"; ctx.fillRect(20,20,75,50); ctx.globalCompositeOperation="source-over"; ctx.fillStyle="blue"; ctx.fillRect(50,50,75,50); ctx.fillStyle="red"; ctx.fillRect(150,20,75,50); ctx.globalCompositeOperation="destination-over"; ctx.fillStyle="blue"; ctx.fillRect(180,50,75,50);
ตัวอย่าง 2
ค่าทั้งหมดของ globalCompositeOperation:
วลี
context.globalCompositeOperation="source-in";
ค่าทางภาพ
ค่า | รายละเอียด |
---|---|
source-over | ค่าปริยาย |
source-atop | แสดงภาพต้นทางด้านบนของภาพปลายทาง。ส่วนภาพต้นทางที่อยู่นอกภาพปลายทางจะไม่แสดง。 |
source-in | แสดงภาพต้นทางในภาพปลายทาง。เฉพาะส่วนภาพต้นทางในภาพปลายทางที่จะแสดง ภาพปลายทางเป็นสีและสัปดาห์。 |
source-out | แสดงภาพต้นทางนอกภาพปลายทาง。เฉพาะส่วนภาพต้นทางนอกภาพปลายทางที่จะแสดง ภาพปลายทางเป็นสีและสัปดาห์。 |
destination-over | แสดงภาพปลายทางด้านบนของภาพต้นทาง。 |
destination-atop | แสดงภาพปลายทางด้านบนของภาพต้นทาง。ส่วนภาพปลายทางนอกภาพต้นทางจะไม่แสดง。 |
destination-in | แสดงภาพปลายทางในภาพต้นทาง。เฉพาะส่วนภาพปลายทางในภาพต้นทางที่จะแสดง ภาพต้นทางเป็นสีและสัปดาห์。 |
destination-out | แสดงภาพปลายทางนอกภาพต้นทาง。เฉพาะส่วนภาพปลายทางนอกภาพต้นทางที่จะแสดง ภาพต้นทางเป็นสีและสัปดาห์。 |
ขาวเข้ม | แสดงภาพต้นทาง + ภาพปลายทาง。 |
คัดลอก | แสดงภาพต้นทาง。ละเลยภาพปลายทาง。 |
xor | ใช้การปฏิบัติการ XOR ในการรวมภาพต้นทางกับภาพปลายทาง |
รายละเอียดเทคนิค
ค่าเริ่มต้น: | source-over |
---|
การสนับสนุนโปรแกรมบราวเซอร์
ตัวเลขในตารางนี้ระบุตัวเวอร์ชันบราวเซอร์ที่สนับสนุนคุณสมบัตินี้ครบถ้วน
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
หมายเหตุ:Internet Explorer 8 และตัวเวอร์ชันที่เก่ากว่าไม่สนับสนุนสิ่งของ <canvas> อยู่