HTML canvas transform() Metoda

❮ HTML Canvas Reference

Příklad

Nakreslete obdélník, přidejte novou transformační matici pomocí transform(), nakreslete obdélník znovu, přidejte novou transformační matici a poté nakreslete obdélník znovu. Všimněte si, že pokaždé, když zavoláte transform(), staví na předchozí transformační matici:

Váš prohlížeč nepodporuje HTML5canvatag.

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);

Podpora prohlížeče

Čísla v tabulce určují první verzi prohlížeče, která tuto metodu plně podporuje.

Method
transform() Yes 9.0 Yes Yes Yes

Definice a použití

Každý objekt na plátně má aktuální transformační matici.

Metoda transform() nahrazuje aktuální transformační matici. Vynásobí aktuální transformační matici maticí popsanou takto:

A C E
b d F
0 0 1

Jinými slovy, metoda transform() vám umožňuje škálovat, otáčet, přesouvat a zkreslovat aktuální kontext.

Poznámka: Transformace ovlivní pouze výkresy vytvořené po zavolání metody transform().

Poznámka: Metoda transform() se chová relativně k jiným transformacím provedeným pomocí rotation(), scale(), translate() nebo transform(). Příklad: Pokud jste již nastavili měřítko výkresu po dvou a metoda transform() změní měřítko výkresů po dvou, výkresy se nyní změní na čtyři.

Tip: Vyzkoušejte metodu setTransform() , která se nechová relativně k jiným transformacím.

Syntaxe JavaScriptu: kontext .transform( a,b,c,d,e,f );

Hodnoty parametrů

Parameter Description Play it
a Horizontal scaling
b Horizontal skewing
c Vertical skewing
d Vertical scaling
e Horizontal moving
f Vertical moving

❮ HTML Canvas Reference