THE WORLD'S LARGEST WEB DEVELOPER SITE
HTMLCSSJAVASCRIPTSQLPHPBOOTSTRAPJQUERYANGULARXML
 

HTML canvas setTransform() Method

Canvas Object Reference Canvas Object

Example

Draw a rectangle, reset and create a new transformation matrix with setTransform(), draw the rectangle again, reset and create a new transformation matrix, then draw the rectangle again. Notice that each time you call setTransform(), it resets the previous transformation matrix and then builds the new matrix, so in the example below, the red rectangle is not shown, because it is under the blue rectangle:

YourbrowserdoesnotsupporttheHTML5canvastag.

JavaScript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");

ctx.fillStyle="yellow";
ctx.fillRect(0,0,250,100)

ctx.setTransform(1,0.5,-0.5,1,30,10);
ctx.fillStyle="red";
ctx.fillRect(0,0,250,100);

ctx.setTransform(1,0.5,-0.5,1,30,10);
ctx.fillStyle="blue";
ctx.fillRect(0,0,250,100);
Try it yourself »

Browser Support

Internet Explorer Firefox Opera Google Chrome Safari

Internet Explorer 9, Firefox, Opera, Chrome, and Safari support the setTransform() method.

Note: Internet Explorer 8 and earlier versions, do not support the <canvas> element.


Definition and Usage

Each object on the canvas has a current transformation matrix.

The setTransform() method resets the current transform to the identity matrix, and then runs transform() with the same arguments.

In other words, the setTransform() method lets you scale, rotate, move, and skew the current context.

Note: The transformation will only affect drawings made after the setTransform method is called.

JavaScript syntax: context.setTransform(a,b,c,d,e,f);

Parameter Values

Parameter Description Play it
a Scales the drawings horizontally Play it »
b Skews the drawings horizontally Play it »
c Skews the drawings vertically Play it »
d Scales the drawings vertically Play it »
e Moves the the drawings horizontally Play it »
f Moves the the drawings vertically Play it »

Canvas Object Reference Canvas Object