The CanvasRenderingContext2D.setTransform() method of the Canvas 2D API resets (overrides) the current transformation to the identity matrix and then invokes a transformation described by the arguments of this method.
See also the transform() method, which does not override the current transform matrix and multiplies it with a given one.
Syntax
void ctx.setTransform(a, b, c, d, e, f);
The transformation matrix is described by:
Parameters
a (m11)- Horizontal scaling.
b (m12)- Horizontal skewing.
c (m21)- Vertical skewing.
d (m22)- Vertical scaling.
e (dx)- Horizontal moving.
f (dy)- Vertical moving.
Examples
Using the setTransform method
This is just a simple code snippet which uses the setTransform method.
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);
Edit the code below and see your changes update live in the canvas:
Specifications
| Specification | Status | Comment |
|---|---|---|
| WHATWG HTML Living Standard The definition of 'CanvasRenderingContext2D.setTransform' in that specification. |
Living Standard |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
| Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
See also
- The interface defining it,
CanvasRenderingContext2D CanvasRenderingContext2D.transform()