Gráficos de tela HTML
O elemento HTML <canvas>
é usado para desenhar gráficos em uma página da web.
O gráfico à esquerda é criado com <canvas>
. Ele mostra quatro elementos: um retângulo vermelho, um retângulo de gradiente, um retângulo multicolorido e um texto multicolorido.
O que é HTML Canvas?
O elemento HTML <canvas>
é usado para desenhar gráficos, em tempo real, via JavaScript.
O <canvas>
elemento é apenas um contêiner para gráficos. Você deve usar JavaScript para realmente desenhar os gráficos.
O Canvas tem vários métodos para desenhar caminhos, caixas, círculos, texto e adicionar imagens.
Suporte ao navegador
Os números na tabela especificam a primeira versão do navegador que suporta totalmente o
<canvas>
elemento.
Element | |||||
---|---|---|---|---|---|
<canvas> | 4.0 | 9.0 | 2.0 | 3.1 | 9.0 |
Exemplos de tela
Uma tela é uma área retangular em uma página HTML. Por padrão, uma tela não tem borda nem conteúdo.
A marcação fica assim:
<canvas id="myCanvas" width="200" height="100"></canvas>
Nota: Sempre especifique um id
atributo (a ser referido em um script) e um atributo width
e height
para definir o tamanho da tela. Para adicionar uma borda, use o style
atributo.
Aqui está um exemplo de uma tela vazia básica:
Exemplo
<canvas id="myCanvas" width="200" height="100"
style="border:1px solid
#000000;">
</canvas>
Adicionar um JavaScript
Após criar a área da tela retangular, você deve adicionar um JavaScript para fazer o desenho.
aqui estão alguns exemplos:
Desenhe uma linha
Exemplo
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.moveTo(0, 0);
ctx.lineTo(200, 100);
ctx.stroke();
</script>
Desenhar um círculo
Exemplo
<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>
Desenhe um texto
Exemplo
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "30px Arial";
ctx.fillText("Hello World", 10, 50);
</script>
Texto do traço
Exemplo
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "30px Arial";
ctx.strokeText("Hello World", 10, 50);
</script>
Desenhar Gradiente Linear
Exemplo
<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>
Desenhar Gradiente Circular
Exemplo
<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>
Desenhar Imagem
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = document.getElementById("scream");
ctx.drawImage(img, 10, 10);
</script>
Tutorial de tela HTML
Para saber mais sobre <canvas>
, leia nosso Tutorial HTML Canvas .