Cơ bản về canvas trong HTML5
<canvas> là một phần tử mới xuất hiện trong HTML5 và rất hữu ích trong việc vẽ đồ họa trên nền web. Nó lần đầu được giới thiệu bởi Apple, sau đó được ứng dụng nhiều vào trong trình duyệt Safari và bây giờ các trình duyệt phổ biến cũng đã hỗ trợ . Để canvas chạy được với IE ta cần thêm ExplorerCanvas
Tại sao chúng ta cần Canvas
Bởi vì Canvas có thể giúp hiển thị trực quan một số hình ảnh dễ dàng trên trình duyệt như:
- Các sơ đồ đơn giản
- Trang trí thêm cho giao diện người dùng
- Hình ảnh động
- Biểu đồ và đồ thị
- Có thể nhúng các ứng dụng vẽ
- Hoạt động tốt với những hạn chế của CSS
Cần gì để tìm hiểu <canvas>
Sử dụng <canvas> không khó, bạn chỉ cần có kiến thức về HTML và JavaScript. Ví dụ đơn giản dưới đây sẽ giúp bạn hiểu thêm về <canvas>
Đây là đọan code mình vẽ là cờ Việt Nam :
<html> <head> <script type="application/x-javascript"> function draw(){ // Lấy ra vị trí canvas var canvas = document.getElementById('canvas'); if (canvas.getContext){ var ctx = canvas.getContext('2d'); // Đầu tiên vẽ nền đỏ trước ctx.fillStyle = "rgb(255,0,0)"; ctx.fillRect (0, 0, 500, 300); // Để vẽ sharp cần có .beginPath() ctx.beginPath(); // Chọn màu ngôi sao là màu vàng ctx.fillStyle = 'yellow'; // Chỉ ra tọa độ bắt đầu (x,y) dựa theo width và height trong html ctx.moveTo(250,80); // Bắt đầu vẽ ctx.lineTo(200,200); ctx.lineTo(320,125); ctx.lineTo(180,125); ctx.lineTo(300,200); ctx.closePath(); // Vẽ xong cần tô màu ctx.fill(); } } </script> </head> <body onLoad="draw();"> <canvas id="canvas" width="500" height="300"></canvas> </body> </html>
Ví dụ trên rất cơ bản, để tìm hiểu thêm về <canvas> như vẽ đồ thị, hình động hoặc cao hơn là viết các game nhỏ sử dụng canvas bạn có thể đọc tại đây và tải về API cheatsheet của nó