We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

CanvasRenderingContext2D.setTransform()

La méthode CanvasRenderingContext2D.setTransform() de l'API Canvas 2D réinitialise (remplace) la transformation en cours à la matrice identité et appelle ensuite la transformation décrite par les arguments de cette méthode.

Voir aussi la méthode transform(), qui ne replace pas la matrice de transformation en cours et la multiplie par celle donnée..

Syntaxe

void ctx.setTransform(a, b, c, d, e, f);

La matrice de transformation est décrite par : [acebdf001]\left[ \begin{array}{ccc} a & c & e \\ b & d & f \\ 0 & 0 & 1 \end{array} \right]

Paramètres

a (m11)
Échelle horizontale.
b (m12)
Inclinaison horizontale.
c (m21)
Inclinaison verticale.
d (m22)
Échelle verticale.
e (dx)
Déplacement horizontal.
f (dy)
Déplacement vertical.

Exemples

Utilisation de la méthode setTransform

Ceci est seulement un fragment de code simple qui utilise la méthode setTransform.

HTML

<canvas id="canvas"></canvas>

JavaScript

var canvas = document.getElementById('canvas');
var ctx = canvas.getContext('2d');

ctx.setTransform(1, 1, 0, 1, 0, 0);
ctx.fillRect(0, 0, 100, 100);

Modifiez le code ci-dessous et voyez vos changements mis à jour en temps réel dans le canevas :

Playable code
<canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas>
<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.setTransform(1,1,0,1,0,0);
ctx.fillRect(0,0,100,100);</textarea>
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
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);

Spécifications

Spécification Statut Commentaire
HTML Living Standard
La définition de 'CanvasRenderingContext2D.setTransform' dans cette spécification.
Standard évolutif  

Compatibilité navigateurs

FonctionnalitéChromeEdgeFirefoxInternet ExplorerOperaSafari
Support simple Oui12 Oui Oui Oui Oui
FonctionnalitéAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Support simple Oui Oui Oui Oui Oui Oui Oui

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : SphinxKnight, NemoNobobyPersonne
Dernière mise à jour par : SphinxKnight,