Método drawImage() do canvas HTML
Definição e uso
drawImage()
O método desenha uma imagem, um canvas ou um vídeo na tela.
drawImage()
O método também pode desenhar partes específicas da imagem e/ou aumentar ou diminuir o tamanho da imagem.
Exemplo
Exemplo 1
Imagem a ser usada:

Desenhar a imagem no topo do painel:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("tulip"); ctx.drawImage(img,10,10);
Dica:Mais exemplos estão disponíveis na parte inferior da página.
Sintaxe
Sintaxe JavaScript 1
Posicionar a imagem no painel:
context.drawImage(img,x,y);
Sintaxe JavaScript 2
Posicionar a imagem no painel e definir suas dimensões de largura e altura:
context.drawImage(img,x,y,width,height);
Sintaxe JavaScript 3
Cortar a imagem e posicionar a parte cortada no painel:
context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height);
Valor do parâmetro
Parâmetro | Descrição |
---|---|
img | Define a imagem, o painel ou o vídeo a ser usado. |
sx | Opcional. Posição x inicial do corte. |
sy | Opcional. Posição y inicial do corte. |
swidth | Opcional. Largura da imagem cortada. |
sheight | Opcional. Altura da imagem cortada. |
x | Posição x da imagem no painel. |
y | Posição y da imagem no painel. |
width | Opcional. Largura da imagem a ser usada (esticar ou encolher a imagem). |
height | Opcional. Altura da imagem a ser usada (esticar ou encolher a imagem). |
Mais exemplos
Exemplo 2
Posicionar a imagem no painel e definir suas dimensões de largura e altura:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("tulip"); ctx.drawImage(img,10,10,240,160);
Exemplo 3
Cortar a imagem e posicionar a parte cortada no painel:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("scream"); ctx.drawImage(img,90,130,90,80,20,20,90,80);
Exemplo 4
Vídeo a ser usado (pressione o botão de reprodução para começar o demo):
Painel:
JavaScript (a cada 20 milissegundos, o código desenha o frame atual do vídeo):
var v=document.getElementById("video1"); var c=document.getElementById("myCanvas"); ctx=c.getContext('2d'); v.addEventListener('play',function() {var i=window.setInterval(function()} {ctx.drawImage(v,0,0,270,135)},20);},false); v.addEventListener('pause',function() {window.clearInterval(i);},false); v.addEventListener('ended',function() {clearInterval(i);},false);
Suporte do navegador
Os números na tabela indicam a versão do navegador que suportou a propriedade pela primeira vez.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
Observação:O Internet Explorer 8 e versões anteriores não suportam o elemento <canvas>.