--- title: CanvasRenderingContext2D.drawImage() slug: Web/API/CanvasRenderingContext2D/drawImage tags: - API - Canvas - CanvasRenderingContext2D - Méthode - Référence(2) translation_of: Web/API/CanvasRenderingContext2D/drawImage ---
La méthode CanvasRenderingContext2D
.drawImage()
de l'API 2D des Canvas instaure différentes manières de dessiner des images dans les balises canvas.
void ctx.drawImage(image, dx, dy); void ctx.drawImage(image, dx, dy, dLargeur, dHauteur); void ctx.drawImage(image, sx, sy, sLargeur, sHauteur, dx, dy, dLargeur, dHauteur);
image
dx
x
dans le canvas de destination où placer le coin supérieur gauche de l'image
source.dy
y
dans le canvas de destination où placer le coin supérieur gauche de l'image
source.dLargeur
image
dessinée dans le contexte de la balise canvas. Cela permet d'ajuster la taille de l'image. Si cet argument n'est pas spécifié, l'image prendra sa largeur normale.image
dessinée dans le contexte de la balise canvas. Cela permet d'ajuster la taille de l'image. Si cet argument n'est pas spécifié, l'image prendra sa hauteur normale.sx
x
du bord en haut à gauche de la partie de l'image
source à dessiner dans le contexte du canvas.sy
y
du bord en haut à gauche de la partie de l'image
source à dessiner dans le contexte du canvas.sLargeur
sx
, autrement dit l'image dessinée dans le contexte sera la partie de l'image d'origine à partir du point s de coordonnées (sx
; sy
) et jusqu'au bord en bas à droite.sHauteur
sy
.INDEX_SIZE_ERR
INVALID_STATE_ERR
TYPE_MISMATCH_ERR
drawImage
Ceci est un extrait de code utilisant la méthode drawImage
:
<canvas id="canvas"></canvas> <img id="source" src="https://mdn.mozillademos.org/files/5397/rhino.jpg" width="300" height="227"> </div>
var canvas = document.getElementById("canvas"); var ctx = canvas.getContext("2d"); var image = document.getElementById("source"); ctx.drawImage(image, 33, 71, 104, 124, 21, 20, 87, 104);
Éditez le code suivant pour voir les changements en direct dans la balise canvas:
<canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas> <img id="source" src="https://mdn.mozillademos.org/files/5397/rhino.jpg" width="300" height="227"> </div> <div class="playable-buttons"> <input id="edit" type="button" value="Edit" /> <input id="reset" type="button" value="Reset" /> </div> <textarea id="code" class="playable-code"> ctx.drawImage(image, 33, 71, 104, 124, 21, 20, 87, 104);</textarea>
var canvas = document.getElementById("canvas"); var ctx = canvas.getContext("2d"); var image = document.getElementById('source'); var textarea = document.getElementById("code"); var reset = document.getElementById("reset"); var edit = document.getElementById("edit"); var code = textarea.value; function drawCanvas() { ctx.clearRect(0, 0, canvas.width, canvas.height); eval(textarea.value); } reset.addEventListener("click", function() { textarea.value = code; drawCanvas(); }); edit.addEventListener("click", function() { textarea.focus(); }) textarea.addEventListener("input", drawCanvas); window.addEventListener("load", drawCanvas);
{{ EmbedLiveSample('Playable_code', 700, 360) }}
Spécification | Statut | Commentaire |
---|---|---|
{{SpecName('HTML WHATWG', "scripting.html#dom-context-2d-drawimage", "CanvasRenderingContext2D.drawImage")}} | {{Spec2('HTML WHATWG')}} |
{{Compat("api.CanvasRenderingContext2D.drawImage")}}
sLargeur
et sHauteur
a été ajouté à Gecko 5.0 {{geckoRelease("5.0")}}.drawImage()
gère les arguments négatifs, conformément à la spécification, en inversant ces valeurs par rapport aux axes.null
ou undefined
en appellant drawImage()
correctement retournera une exception TYPE_MISMATCH_ERR
à partir de {{geckoRelease("5.0")}}.