HTML canvas transform() Metoda
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:
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