HTML

HTML Canvas: Code dan Cara Membuat sintaknya

Elemen <canvas> pada HTML digunakan untuk menggambar grafik pada halaman web.

Gambar grafik diatas dibuat dengan elemen <canvas>. Gambar tersebut menunjukkan empat elemen <canvas> yaitu persegi panjang merah, persegi panjang gradien, persegi panjang multicolor, dan teks multicolor.

Apa itu HTML Canvas?

Elemen <canvas>pada HTML digunakan untuk menggambar grafik dengan cepat melalui JavaScript.

Elemen tersebut hanya sebuah penampung untuk grafik. Kita harus menggunakan JavaScript untuk benar-benar menggambar sebuah grafik.

Canvas memiliki beberapa metode untuk menggambar path, kotak, lingkaran, teks, dan menambahkan gambar.

Browser Support

Angka-angka dalam tabel menentukan versi browser pertama yang sepenuhnya mendukung elemen

ElementChromeEdgeFirefoxSafariOpera
<canvas>4.09.02.03.19.0

Contoh penggunaan Canvas

Canvas adalah area persegi panjang pada halaman HTML. Secara default, Canvas tidak memiliki batas dan tidak ada konten.

Markup canvas berbentuk seperti ini:

<canvas id="myCanvas" width="200" height="100"></canvas>

Catatan: Selalu tentukan atribut id (untuk merujuk ke dalam script), atribut width dan height untuk menentukan ukuran kanvas. Lalu untuk menambahkan border, gunakan atribut style.

Berikut adalah contoh dasar Canvas kosong :

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000000;">
Browser Anda tidak mendukung tag canvas HTML.
</canvas>

</body>
</html>

Menambahkan JavaScript

Setelah membuat area canvas berbentuk persegi panjang, selanjutnya tambahkan JavaScript untuk mulai menggambar.

Berikut beberapa contohnya.

Menggambar garis :

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Browser Anda tidak mendukung tag canvas HTML..</canvas>

<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.moveTo(0,0);
ctx.lineTo(200,100);
ctx.stroke();
</script>

</body>
</html>

Menggambar lingkaran:

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Browser Anda tidak mendukung tag canvas HTML.</canvas>

<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.arc(95,50,40,0,2*Math.PI);
ctx.stroke();
</script> 

</body>
</html>

Menggambar teks:

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Browser Anda tidak mendukung tag canvas HTML.</canvas>

<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "30px Arial";
ctx.fillText("Hello World",10,50);
</script>

</body>
</html>

Teks Stroke :

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Browser Anda tidak mendukung tag canvas HTML.</canvas>

<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "30px Arial";
ctx.strokeText("Hello World",10,50);
</script>

</body>
</html>

Menggambar Gradien Linear :

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Browser Anda tidak mendukung tag canvas HTML.</canvas>

<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
// Create gradient
var grd = ctx.createLinearGradient(0,0,200,0);
grd.addColorStop(0,"red");
grd.addColorStop(1,"white");
// Fill with gradient
ctx.fillStyle = grd;
ctx.fillRect(10,10,150,80);
</script>

</body>
</html>

Menggambar Gradien Melingkar :

<!DOCTYPE html>
<html>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
Browser Anda tidak mendukung tag canvas HTML.</canvas>

<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");

// Create gradient
var grd = ctx.createRadialGradient(75,50,5,90,60,100);
grd.addColorStop(0,"red");
grd.addColorStop(1,"white");

// Fill with gradient
ctx.fillStyle = grd;
ctx.fillRect(10,10,150,80);
</script>

</body>
</html>

Menggambar Image :

<!DOCTYPE html>
<html>
<body>

<p>Images yang digunakan:</p>
<img id="scream" src="https://dosenit.com/wp-content/uploads/2020/10/audi.jpg" width="220" height="277">

<p>Canvas yang di isi:</p>
<canvas id="myCanvas" width="250" height="300"
style="border:1px solid #d3d3d3;">
Browser Anda tidak mendukung tag canvas HTML.</canvas>

<p><button >

Catur Kurnia Sari