DANH MỤC TÀI LIỆU
Phần tử Canvas trong HTML5
Ph n t Canvas trong HTML5ầ ử
Ph n tầ ử <canvas> trong HTML đ c s d ng đ v đ h a cho trang ượ ử ụ ể ẽ ồ ọ
web. V y canvas có nh ng n i dung gì, cách s d ng ra sao, b n hãy cùng ử ụ
Quantrimang tìm hi u qua bài vi t này nhé.ể ế
Canvas là gì?
Ph n t <canvas>ầ ử s d ng đ v các thành ph n đ h a t đ n gi n nhử ụ ể ẽ ồ ọ ừ ơ ư
các đ ng đ n các đ h a ph c t p (đ ng th ng, hình h p, hình tròn, ườ ế ồ ọ ườ
vi t ch , chèn hình nh...).ế ữ
<canvas> cũng t ng t nh nh ng th HTML khác, đ s d ng thì b n ươ ự ư ữ
ph i đ t thả ặ <canvas></canvas> t i v trí mu n hi n th . Tuy nhiên có ạ ị
m t s khác bi t rõ r t nh t là n i dung c a nó l i đ c xây d ng ộ ự ượ
t Javascript.
<canvas> ch có ch c năng ch a các đ i t ng đ h a. B n b t bu c ph i ượ ồ ọ
s d ng JavaScript đ v .ử ụ ể ẽ
Trình duy t h tr ỗ ợ
4.0 2.0 9.0 9.0 3.1
T a đ trong canvasọ ộ
Canvas s d ng tr c t a đ 2 chi u, v i góc trái phía trên là t a đ g c ọ ộ ọ ộ
(0,0)
X : t a đ theo ph ng n m ngang, tăng d n t trái sang ph i ươ ầ ừ
Y : t a đ theo ph ng th ng đ ng, tăng d n t trên xu ng d i ươ ầ ừ ướ
Khai báo Canvas
Canvas là m t vùng hình ch nh t trên m t trang HTML. Theo m c đ nh, ặ ị
m t canvas không đ ng biên và không ch a n i dung. ườ ứ ộ
Code khai báo m t ph n t canvas: ầ ử
<canvas id="myCanvas" width="200" height="100"></canvas>
Chú ý: Luôn luôn đ t thu c tínhặ ộ id có th g i trong script), thu c ể ọ
tính widthheightđ đ t kích th c c a canvas. N u không đ c ch ra ể ặ ướ ế ượ
kích th c, thì kích th c m c đ nh làướ ướ ặ ị 300px chi u r ng vàề ộ 150px chi u
cao.
Đ thêm đ ng vi n, s d ng thu c tính style nh sau: ườ ử ụ ư
<canvas id="myCanvas" width="500" height="200" style="border:1px solid
#000000;">
</canvas>
K t qu :ế ả
M t s l nh v <canvas> ố ệ
V đ ng th ng trong Canvasẽ ườ
Đ v đ ng th ng trên m t đ i t ng canvas, ta s dùng hàm sau:ể ẽ ườ ượ
moveTo(x,y): xác đ nh đi m b t đ u ắ ầ
lineTo(x,y): xác đ nh đi m k t thúc ể ế
Th ng đ v các đ ng đ u tiên ta g iườ ườ beginPath() đ kh i t o m t path ở ạ
m i (nó ch a t p h p các l nh đ ng c n v ). ứ ậ ườ
Cu i cùng đ th c hi n v t p đó g i hàm ẽ ậ stroke()
Ví d
<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" width="500" height="200" style="border:1px solid
#8080ff;"></canvas>
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
// Đ ng th nh tườ ứ ấ
ctx.beginPath(); // Khai báo v đ ng th ng m iẽ ườ
ctx.moveTo(0,0); // Xác đ nh đi m b t đ u ắ ầ
ctx.lineTo(500,200); // Xác đ nh đi m k t thúc ể ế
ctx.strokeStyle = 'red' // Màu c a đ ng th ngủ ườ
ctx.stroke(); // Ti n hành vế ẽ
// Đ ng th haiườ ứ
ctx.beginPath(); // Khai báo v đ ng th ng m iẽ ườ
ctx.moveTo(0,200); // Xác đ nh đi m b t đ u ắ ầ
ctx.lineTo(250,100); // Xác đ nh đi m k t thúc ể ế
ctx.strokeStyle = 'brown' // Màu c a đ ng th ngủ ườ
ctx.lineWidth = 3; //Đ r ngộ ộ
ctx.stroke(); // Ti n hành vế ẽ
</script>
</body>
</html>
K t qu thu đ cế ả ượ
V cung tròn - hình tròn trong Canvas
Đ v cung tròn - hình tròn, ta dùng l nh:ể ẽ arc(x,y,r,start,stop)
x và y: t a đ tâmọ ộ
r: là bán kính
start: là góc b t đ uắ ầ
end: là góc k t thúcế
<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" width="600" height="200" style="border:1px solid
teal;background: LightYellow"></canvas>
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
// Cung tròn 1
ctx.beginPath();
ctx.arc(100, 100, 90, Math.PI, 0); // T a đ tâm (100,100), bán kính 90ọ ộ
ctx.strokeStyle = 'steelblue'; // Màu c a đ ngủ ườ
ctx.lineWidth = 5; //Đ r ngộ ộ
ctx.stroke();
// Hình tròn
ctx.beginPath();
ctx.arc(300, 100, 90, 0, 2*Math.PI); // T a đ tâm (300,100), bán kính 90ọ ộ
ctx.strokeStyle = 'salmon' // Màu c a đ ngủ ườ
ctx.lineWidth = 3; //Đ r ngộ ộ
ctx.stroke();
// Cung tròn 2
ctx.beginPath();
ctx.arc(500, 100, 90, 0, Math.PI); // T a đ tâm (500,100), bán kính 90ọ ộ
ctx.strokeStyle = 'seagreen'; // Màu c a đ ngủ ườ
ctx.lineWidth = 5; //Đ r ngộ ộ
ctx.stroke();
</script>
</body>
</html>
K t qu thu đ cế ả ượ
Vi t ch trong Canvasế ữ
Đ vi t m t đo n văn b n, ta chú tr ng đ n thu c tính và hàm sau:ể ế ế
font: đ nh ki u ch cho đo n văn b n. ể ữ
fillText(text,x,y): Vi t ch trên canvas.ế ữ
strokeText(text,x,y): Vi t ch trên canvas nh ng không tô màu ch .ế ữ ư
<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" width="500" height="200" style="background:
teal"></canvas>
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "48px Arial";
ctx.fillStyle = 'lightsalmon';
ctx.fillText("Hello World",120,80);
ctx.font = '50px serif';
ctx.strokeStyle = 'lightsalmon';
ctx.strokeText('Hello world', 120, 150);
</script>
</body>
</html>
K t qu :ế ả
thông tin tài liệu
Phần tử trong HTML được sử dụng để vẽ đồ họa cho trang web. Vậy canvas có những nội dung gì, cách sử dụng ra sao, bạn hãy cùng Quantrimang tìm hiểu qua bài viết này nhé.
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×