Professional Documents
Culture Documents
● Canvas được giới thiệu lần đầu bởi Apple vào năm 2004 trên Mac OS X Webkit, dùng để xây dựng các ứng
dụng tiện ích trên Dashboard và trình duyệt safari.
● Năm 2006 được tổ chức WHATWG chuẩn hóa và đề xuất trở thành một thông số kỹ thuật cho thế hệ web
mới.
● WHATWG (Web Hypertext Application Technology Working Group) là tổ chức được thành lập bởi Apple,
Mozilla, Opera, Google ...để phát triển các công nghệ ứng dụng liên quan đến HTML.
Các đặc điểm của Canvas
● Trước khi HTML5 ra đời, để làm các chương trình đồ họa(graphic), hoạt hình(ani) các lập trình viên thường
nhúng 1 chương trình của bên FLASH, Java Applet ...khiến website trở nên nặng hơn, phát sinh sinh các vấn
đề về bảo mật, khiến điện thoại nhanh hết pin.
● Canvas ra đời để thực hiện các tác vụ đồ họa thế cho Flash.
● Canvas sử dụng code Javascript để vẽ nên sẽ rất tiện phối hợp với các sự kiện khác như click button,
download api trên trang web.
● Sau bước thiết lập này thì chỉ code trên javascript trên thẻ canvas.
Hệ trục tọa độ trong canvas
● Canvas sử dụng rất nhiều kiến thức đến từ hình học không gian.
● Trục toạ độ (0, 0) trong canvas bắt đầu từ góc trên bên trái.
Vẽ đường thẳng
<script>
var c = document.getElementById("frame_canvas");
var ctx = c.getContext("2d");
// bắt đầu vẽ 1 đối tượng đồ họa mới
ctx.beginPath();
// di chuyển tới toạ độ cần để vẽ đường thẳng, patameter là x, y
ctx.moveTo(20, 20);
// vẽ 1 đường thẳng (từ toạ độ đang đứng) tới toạ độ mới , patameter là x, y
ctx.lineTo(20, 100);
ctx.lineTo(70, 100);
// khai báo màu đường viền
ctx.strokeStyle = "green";
// tiến hành viền
ctx.stroke();
</script>
Cú pháp Japascript: context.moveTo(x, y);
Di chuyển con trỏ chuột ảo tới địa điểm x, y
Parameter Decription
x Toạ độ x
y Toạ độ y
Parameter Decription
x Toạ độ x
y Toạ độ y
Hiển thị line trên trang web
Vẽ 1 hình chữ nhật
<script>
var c = document.getElementById("frame_canvas");
var ctx = c.getContext("2d");
// bắt đầu vẽ 1 đối tượng đồ họa mới
ctx.beginPath();
// hàm vẽ hình chữ nhật với các parameter lần lượt x, y, chiều dài, chiều cao
ctx.rect(20, 20, 150, 100);
// khai báo màu background của hình chữ nhật
ctx.fillStyle = "#3EADEF";
// tô màu hình chữ nhật
ctx.fill();
// khai báo độ dài đường viền (border) của hình chữ nhật
ctx.lineWidth = 5;
// khai báo độ dài đường viền (border)
ctx.strokeStyle = "black";
// tiến hành viền hình chữ nhật
ctx.stroke();
</script>
Cú pháp Japascript:
context.rect(x, y, width, height);
Parameter Decription
x Toạ độ x
y Toạ độ y
Parameter Decription
x Toạ độ x
y Toạ độ y
startAngle Góc bắt đầu theo radians (nếu là 0 sẽ bắt đầu vẽ từ góc 3
giờ)
endAngle Góc kết thúc theo radians
ta sẽ tự vẽ.
● Cách vẽ hình tam giác cơ bản:
○ Tạo đối tượng Point gồm 2 biến x, y.
○ Tạo 1 đối tượng hình tam giác chứa 3 point là 3 điểm của hình tam giác.
○ Nối 3 Point lại với nhau
Tạo giao thức ( giống class trong java) Point