Метод Canvas transform()
Определение и использование
Каждый объект на канвасе имеет текущую матрицу преобразования.
transform()
Метод заменяет текущую матрицу преобразования. Он operates на текущую матрицу преобразования по следующей матрице:
a c e b d f 0 0 1
Иначе говоря, transform() позволяет вам масштабировать, вращать, перемещать и наклонять текущую среду.
Комментарий:Эта трансформация будет влиять только на рисование, выполненное после вызова transform()
Комментарий:Поведение метода transform() относительно rotate(),scale(),translate() или другие преобразования, выполненные с помощью transform(). Например: если вы уже установили масштабирование в два раза, то метод transform() увеличит рисование в два раза, и ваше рисование в конечном итоге увеличится вчетверо.
Совет:Смотрите также setTransform() Метод, который не будет вести себя относительно других преобразований.
Пример
Нарисуйте прямоугольник; добавьте новую матрицу преобразования с помощью transform() и нарисуйте прямоугольник снова; добавьте новую матрицу преобразования и нарисуйте прямоугольник снова. Обратите внимание, что каждый раз, когда вы вызывайте transform(), она строится на основе предыдущей матрицы преобразования:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.fillStyle="yellow"; ctx.fillRect(0,0,250,100) ctx.transform(1,0.5,-0.5,1,30,10); ctx.fillStyle="red"; ctx.fillRect(0,0,250,100); ctx.transform(1,0.5,-0.5,1,30,10); ctx.fillStyle="blue"; ctx.fillRect(0,0,250,100);
Синтаксис
context.transform(a,b,c,d,e,f);
Значение параметра
Параметр | Описание |
---|---|
a | Горизонтальное масштабирование рисования. |
b | Горизонтальное наклонение рисования. |
c | Вертикальное наклонение рисования. |
d | Вертикальное масштабирование рисования. |
e | Горизонтальное движение рисования. |
f | Вертикальное движение рисования. |
Поддержка браузеров
Таблица цифр указывает на версию браузера, которая首个完全支持该属性。
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
Комментарий:Internet Explorer 8 и более ранние версии не поддерживают элемент <canvas>.