This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The CanvasRenderingContext2D.currentTransform property of the Canvas 2D API returns or sets a DOMMatrix (current specification) or SVGMatrix (old specification) object for the current transformation matrix.
ctx.currentTransform [= value];
currentTransform methodThis is just a simple code snippet that uses the currentTransform property to set a transformation matrix.
<canvas id="canvas"></canvas>
var canvas = document.getElementById('canvas');
var ctx = canvas.getContext('2d');
var matrix = ctx.currentTransform;
matrix.a = 1;
matrix.b = 1;
matrix.c = 0;
matrix.d = 1;
matrix.e = 0;
matrix.f = 0;
ctx.currentTransform = matrix;
ctx.fillRect(0, 0, 100, 100);
Edit the code below and see your changes update live in the canvas (make sure to use a browser that supports this feature — see the compatibility table):
| Specification | Status | Comment |
|---|---|---|
| HTML Living Standard The definition of 'CanvasRenderingContext2D.currentTransform' in that specification. | Living Standard |
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | (Yes) [1] | No support [2] | No support | No support | No support [3] |
Returns a DOMMatrix
| No support [4] | ? | No support | No support | Nightly build [3] |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | No support | No support | No support | No support | No support | No support |
[1] This feature is deactivated by default. Enable the ExperimentalCanvasFeatures flag to test it.
[2] See bug 928150. Gecko also supports the experimental and prefixed properties mozCurrentTransform and mozCurrentTransformInverse which set or get the current (inverse) transformation matrix.
[3] See WebKit bug 174278.
[4] See https://bugs.chromium.org/p/chromium/issues/detail?id=637940.
CanvasPattern
SVGMatrixDOMMatrix
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/currentTransform