Canvas drawImage() 方法
定义和用法
drawImage()
方法在画布上绘制图像、画布或视频。
drawImage()
方法也能够绘制图像的某些部分,以及/或者增加或减少图像的尺寸。
实例
例子1
要使用的图片:

向画布上面绘制图片:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("tulip"); ctx.drawImage(img,10,10);
提示:页面底部提供更多实例。
语法
JavaScript语法1
在画布上定位图像:
context.drawImage(img,x,y);
JavaScript语法2
在画布上定位图像,并规定图像的宽度和高度:
context.drawImage(img,x,y,width,height);
JavaScript语法3
剪切图像,并在画布上定位被剪切的部分:
context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height);
参数值
参数 | Beschrijving |
---|---|
img | Specificeer het te gebruiken beeld, bord of video. |
sx | Optioneel. X-coördinaatpositie van het begin van het knippen. |
sy | Optioneel. Y-coördinaatpositie van het begin van het knippen. |
swidth | Optioneel. Breedte van het afgebeelde beeld. |
sheight | Optioneel. Hoogte van het afgebeelde beeld. |
x | X-coördinaatpositie van het beeld op het bord. |
y | Y-coördinaatpositie van het beeld op het bord. |
width | Optioneel. Breedte van het te gebruiken beeld. (Stretch of scale het beeld) |
height | Optioneel. Hoogte van het te gebruiken beeld. (Stretch of scale het beeld) |
Meer voorbeelden
Voorbeeld 2
Plaats een afbeelding op het bord en specificeer de breedte en hoogte van de afbeelding:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("tulip"); ctx.drawImage(img,10,10,240,160);
Voorbeeld 3
Knip een afbeelding en plaats het gecutte deel op het bord:
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);
Voorbeeld 4
Te gebruiken video (druk op de play knop om de demonstratie te starten):
Bord:
JavaScript (elke 20 millisecond, de code tekent het huidige frame van het video):
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);
Browser support
The numbers in the table indicate the first browser version that fully supports this property.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
Note:Internet Explorer 8 and earlier versions do not support the <canvas> element.