Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> HTML

ทำไมต้องใช้แท็ก Canvas ใน HTML5


บทนำ

แท็ก <canvas> ให้พื้นที่วาดกราฟิก 2D ด้วย JavaScript (Scripting) เหมาะสำหรับกราฟิกแบบ Raster (Pixel-based)

แอตทริบิวต์หลัก

แอตทริบิวต์ค่าคำอธิบาย
widthpixelsความกว้าง Drawing Surface (Default 300)
heightpixelsความสูง Drawing Surface (Default 150)
idstringID สำหรับ JavaScript Select

ตัวอย่าง: วาดสี่เหลี่ยม

<!DOCTYPE html>
<html>
  <head>
    <title>HTML Canvas Tag</title>
  </head>
  <body>
    <canvas id="myCanvas"></canvas>
    <script>
      var c = document.getElementById('myCanvas');
      var ctx = c.getContext('2d');
      ctx.fillStyle = '#7cce2b';
      ctx.fillRect(0, 0, 300, 100);
    </script>
  </body>
</html>

Canvas vs SVG

คุณสมบัติCanvasSVG
ประเภทRaster (Pixel)Vector
การขยาย-ย่อเสียคุณภาพไม่เสียคุณภาพ
ประสิทธิภาพ (หลายวัตถุ)สูงต่ำกว่า
Event HandlingManual (Hit Testing)DOM Events
Accessibilityยากดี (Title, Desc)
เหมาะสำหรับGame, Animation, Chart จุดมาก, Image ProcessingIcon, Chart เรียบง่าย, Illustration, Map

Context Types

  • 2d - 2D Drawing (รองรับทุกเบราว์เซอร์)
  • webgl / webgl2 - 3D Graphics (WebGL)
  • bitmaprenderer - Offscreen Canvas