HTML-canvas drawImage() Methode
Afbeelding om te gebruiken:
Voorbeeld
Teken de afbeelding op het canvas:
javascript:
window.onload = function() {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = document.getElementById("scream");
ctx.drawImage(img, 10, 10);
};
Browserondersteuning
De getallen in de tabel geven de eerste browserversie aan die de methode volledig ondersteunt.
Method | |||||
---|---|---|---|---|---|
drawImage() | Yes | 9.0 | Yes | Yes | Yes |
Definitie en gebruik
De methode drawImage() tekent een afbeelding, canvas of video op het canvas.
De methode drawImage() kan ook delen van een afbeelding tekenen en/of de afbeeldingsgrootte vergroten/verkleinen.
Opmerking: u kunt de methode drawImage() niet aanroepen voordat de afbeelding is geladen. Om ervoor te zorgen dat de afbeelding is geladen, kunt u drawImage() aanroepen vanuit window.onload() of vanuit document.getElementById(" imageID ").onload.
JavaScript-syntaxis
Plaats de afbeelding op het canvas:
JavaScript syntax: | context.drawImage(img,x,y); |
---|
Plaats de afbeelding op het canvas en specificeer de breedte en hoogte van de afbeelding:
JavaScript syntax: | context.drawImage(img,x,y,width,height); |
---|
Knip de afbeelding uit en plaats het uitgeknipte deel op het canvas:
JavaScript syntax: | context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height); |
---|
Parameterwaarden
Parameter | Description | Play it |
---|---|---|
img | Specifies the image, canvas, or video element to use | |
sx | Optional. The x coordinate where to start clipping | |
sy | Optional. The y coordinate where to start clipping | |
swidth | Optional. The width of the clipped image | |
sheight | Optional. The height of the clipped image | |
x | The x coordinate where to place the image on the canvas | |
y | The y coordinate where to place the image on the canvas | |
width | Optional. The width of the image to use (stretch or reduce the image) | |
height | Optional. The height of the image to use (stretch or reduce the image) |
Meer voorbeelden
Voorbeeld
Plaats de afbeelding op het canvas en specificeer de breedte en hoogte van de afbeelding:
javascript:
window.onload = function() {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = document.getElementById("scream");
ctx.drawImage(img, 10, 10, 150, 180);
};
Voorbeeld
Knip de afbeelding uit en plaats het uitgeknipte deel op het canvas:
javascript:
window.onload = function() {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = document.getElementById("scream");
ctx.drawImage(img, 90, 130, 50, 60, 10, 10, 50, 60);
};
Voorbeeld
Te gebruiken video (druk op Afspelen om de demonstratie te starten):
Canvas:
JavaScript (de code tekent elke 20 milliseconden het huidige frame van de video):
var v = document.getElementById("video1");
var c = document.getElementById("myCanvas");
var ctx = c.getContext('2d');
var i;
v.addEventListener('play',function() {i=window.setInterval(function()
{ctx.drawImage(v,5,5,260,125)},20);},false);
v.addEventListener('pause',function() {window.clearInterval(i);},false);
v.addEventListener('ended',function() {clearInterval(i);},false);
❮ HTML Canvas-referentie