Bài 01: HTML5 Canvas là gì?

Trong bài này chúng ta sẽ tìm hiểu một thẻ HTML5 dùng để xây dựng Graphic đồ họa đó là thẻ Canvas. Ví dụ bạn muốn vẽ một sơ đồ hình học thì ...

Trong bài này chúng ta sẽ tìm hiểu một thẻ HTML5 dùng để xây dựng Graphic đồ họa đó là thẻ Canvas.

Ví dụ bạn muốn vẽ một sơ đồ hình học thì chúng ta phải sử dụng một file hình ảnh. Nhưng với Canvas thì bạn hoàn toàn có thể tự vẽ được.

1. HTML5 Canvas là gì?

Canvas là một thẻ HTML5 tương tự như những thẻ HTML khác, tuy nhiên có một sự khác biệt rõ rệt nhât là nội dung của Canvas lại được xây dựng từ Javascript. Để sử dụng Canvas thì bạn phải đặt thẻ canvas/canvas tại vị trí muốn hiển thị, sau đó sử dụng các API mà HTML5 cung cấp dùng để thao tác với các đối tượng bên trong Canvas (line, circle, ...).

Khi sử dụng Canvas bạn phải hiểu được sự khác biệt giữa các phần tử của Canvas và nội dung của nó. Phần tử Canvas chỉ là một thẻ HTML thông thường nhung nội dung của nó là một tập hợp các đối tượng tạo nên một Graphic.

Lúc hiển thị lên trình duyệt thì Canvas sẽ hiển thị ở dạng hình ảnh png.

Để cho nóng thì mình sẽ đưa ra một ví dụ như sau: XEM DEMO

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
canvas id="myCanvas" awidth="578" height="200"/canvas
script
    // Lấy thẻ HTML Canvas
    var canvas = document.getElementById('myCanvas');
 
    // Vẽ ở mô hình 2D
    var context = canvas.getContext('2d');
 
    // Thiết lập font chữ và màu
    context.font = '40pt Calibri';
    context.fillStyle = 'blue';
 
    // vẽ một đoạn text tại vị trí 150px 100px
    context.fillText('Hello World!', 150, 100);
/script

Chạy lên bạn sẽ thấy một dòng chữ "Hello World!", bạn hãy thử bôi đen nó xem có được không nhé? Hoàn toàn không được bởi vì nó là một Object hiển thị như hình ảnh nên bạn chỉ có lưu lại dưới dạng file png chứ không phải là một đoạn text nữa.

2. Lời kết

Vì là bài đầu tiên mở đầu cho serie tìm hiểu thẻ Canvas trong HTML5 nên mình không đi sâu vào cách xử lý mà chỉ giới thiệu khái niệm Canvas là gì và một số lưu ý khi sử dụng Canvas. Các bài tiếp theo chúng ta sẽ tìm hiểu cách sử dụng HTML5 Canvas API để thao tác với các đối tượng trong Canvas.


Code Dev

144 Blog posts

Comments