<canvas> เป็นองค์ประกอบ HTML ที่สามารถวาดได้โดยใช้สคริปต์ (ปกติคือ js)
< canvas > WebKit เปิดตัวครั้งแรกโดย Apple และใช้ใน Dashboard และ Safari ของ Mac OS X
ปัจจุบันเบราว์เซอร์หลักๆ ทั้งหมดรองรับแล้ว (IE9+ เวอร์ชันต่ำกว่าจำเป็นต้องแนะนำ Explorer Canvas เพื่อรองรับ)
1. เริ่มวาด (บริบทการเรนเดอร์)องค์ประกอบ <canvas> สร้างแคนวาสขนาดคงที่ซึ่งบริบทการเรนเดอร์ CanvasRenderContext2D สามารถใช้เพื่อวาดและประมวลผลเนื้อหาที่จะแสดง
หากต้องการวาดบนผืนผ้าใบ คุณต้องได้รับบริบทการเรนเดอร์ CanvasRenderContext2D2d ก่อน (นี่หมายถึง 2D ไม่ได้พูดถึง webgl)
const canvas = document.getElementById('mycanvas'); const ctx = canvas.getContext('2d');ctx.fillStyle = 'สีชมพู';ctx.fillRect(10, 10, 300, 300);
ตัวอย่าง
2. คุณสมบัติของ CanvasRenderContext2D:คุณสามารถระบุสไตล์ของภาพวาดได้โดยการตั้งค่าคุณสมบัติของบริบท
คุณสมบัติทั้งหมดมีดังนี้:
คุณสมบัติ | การแนะนำ |
---|---|
ผ้าใบ | องค์ประกอบผ้าใบ |
เติมสไตล์ | สี โหมด หรือการไล่ระดับสีปัจจุบันที่ใช้เติมเส้นทาง |
แบบอักษร | รูปแบบตัวอักษร |
โกลบอลอัลฟ่า | ระบุความทึบของเนื้อหาที่วาดบนผืนผ้าใบ |
globalCompositeOperation | ระบุวิธีการรวมสีกับสีที่มีอยู่แล้วบนผืนผ้าใบ (คอมโพสิต) |
ไลน์แคป | ระบุวิธีการวาดจุดสิ้นสุดของเส้น |
เส้นDashOffset | ตั้งค่าออฟเซ็ตเส้นประ |
lineJoin | ระบุวิธีเชื่อมต่อสองบรรทัด |
เส้นกว้าง | ระบุความกว้างของเส้นสำหรับการทำงานของแปรง (การวาดเส้น) |
ตุ้มปี่จำกัด | เมื่อแอ็ตทริบิวต์ lineJoin เป็น miter แอ็ตทริบิวต์นี้จะระบุอัตราส่วนสูงสุดของความยาวรวมในแนวทแยงต่อความกว้างของเส้น |
เงาเบลอ | ระดับเอฟเฟกต์เบลอ |
เงาสี | สีเงา |
shadowOffsetX | ระยะออฟเซ็ตแนวนอนของเงา |
เงาออฟเซ็ตY | ระยะชดเชยแนวตั้งของเงา |
โรคหลอดเลือดสมองสไตล์ | สี โหมด และการไล่ระดับสีสำหรับเส้นทางแปรง (วาด) |
จัดตำแหน่งข้อความ | การจัดตำแหน่งข้อความ |
ข้อความพื้นฐาน | การจัดตำแหน่งข้อความในแนวตั้ง |
ต้องระบุความกว้างและความสูงของ Canvas โดยใช้ค่าแอตทริบิวต์ width และ height
หากไม่ได้ระบุ ขนาดเริ่มต้นของ Canvas คือ 300×150
ความกว้างและความสูงที่ระบุโดยสไตล์เป็นเพียงขนาดการแสดงผลขององค์ประกอบแคนวาส ไม่ใช่ขนาดของสภาพแวดล้อมการวาดภาพ
ผ้าใบ {width: 1000px;height: 600px;}<canvas id=mycanvas width=1000 height=600></canvas><canvas id=mycanvas1 width=500 height=300></canvas><canvas id=mycanvas2>< /canvas>...ctx.fillStyle = สีแดง;ctx.fillRect(10, 10, 100, 100);ตัวอย่างความกว้างและความสูง
เหตุใดสไตล์จึงถูกตั้งค่าให้มีขนาดเท่ากันแต่แสดงแตกต่างกันโดยสิ้นเชิง
ข้างต้นคือเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการศึกษาของทุกคน ฉันหวังว่าทุกคนจะสนับสนุน VeVb Wulin Network