Helion Bestsellery

JavaScript od pierwszej linii kodu. Błyskawiczna nauka pisania gier, stron WWW i aplikacji internetowych
  • Autor: Laurence Lars Svekis, Maaike van Putten, Rob Percival
  • Zniżka: 35%
  • Cena: 99.00 64.35 zł
  • Marka: Helion
  • Status: Dostępna
  • Typ: Książka
  • EAN: 9788383221977
  • ISBN: 978-83-8322-197-7
Dodaj JavaScript od pierwszej linii kodu. Błyskawiczna nauka pisania gier, stron WWW i aplikacji internetowych do koszyka

Helion Książka Dnia

Algorytmy w Pythonie. Techniki programowania dla praktyków
  • Autor: Piotr Wróblewski
  • Zniżka: 50%
  • Cena: 119.00 59.50 zł
  • Marka: Helion
  • Status: Dostępna
  • Typ: Książka
  • EAN: 9788328393684
  • ISBN: 978-83-283-9368-4
Dodaj Algorytmy w Pythonie. Techniki programowania dla praktyków do koszyka

setTransform()

[ Leksykon ] [ JavaScript ] [ Metody ] [ canvas ] [ CanvasPattern() ]

CanvasPattern.setTransform()

[_] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z]

setTransform(matrix)

 

Przykłady: 

<script>

window.onload = () => {

const szer = 600;
const wys = 600;

const canvas = document.getElementById("canvas");
canvas.width = szer;
canvas.height = wys;
const ctx = canvas.getContext("2d");

const patternCanvas = document.createElement("canvas");
const patternCtx = patternCanvas.getContext("2d");

patternCanvas.width = 45;
patternCanvas.height = 45;

patternCtx.fillStyle = "orange";
patternCtx.fillRect(0, 0, patternCanvas.width, patternCanvas.height);
patternCtx.arc(22, 22, 20, 0, 2 * Math.PI);
patternCtx.stroke();

const pattern2 = ctx.createPattern(patternCanvas, "repeat");
ctx.fillStyle = pattern2;
ctx.fillRect(0, 45, canvas.width, canvas.height);

document.body.appendChild(patternCanvas);

ctx.fillStyle = "rgba(0,51,102,0.9)";
ctx.font = "12px sans-serif";
ctx.textAlign = "center";

const img = new Image();
img.src = "dom.jpg";
img.onload = () => {

const szer = img.width, wys = img.height;

ctx.fillText("1:2 Wygładzanie = true", 75, 10);
ctx.imageSmoothingEnabled = true; // Wygładzanie tak
ctx.imageSmoothingQuality = "high";
ctx.drawImage(img, 0, 25, szer / 2, wys / 2);

ctx.fillText("1:1 Wygładzanie = false", 250, 10);
ctx.imageSmoothingEnabled = false; // Wygładzanie nie
ctx.drawImage(img, szer / 2, 25, szer, wys);

ctx.fillText("2:1 Wygładzanie = true", 475, 10);
ctx.imageSmoothingEnabled = true; // Wygładzanie tak
ctx.imageSmoothingQuality = "low";
ctx.drawImage(img, szer + szer / 4, 25, szer * 3, wys * 1);

const matrix = new DOMMatrix([1, 0.1, 0.6, 1, 0, 0]);
const pattern = ctx.createPattern(img, "repeat");
pattern.setTransform(matrix.rotate(-15).scale(1.2));
ctx.fillStyle = pattern;
ctx.fillRect(0, 200, 600, 300);

};

document.body.appendChild(img);

return;

};

</script>

<canvas id="canvas" width="1" height="1"></canvas>

 

 let matrix = new DOMMatrix();
matrix.a = 1;
matrix.b = 0;
matrix.c = 0;
matrix.d = 1;
matrix.e = 260;
matrix.f = -100;

  

Opis:
Metoda CanvasPattern.setTransform() wykorzystuje DOMMatrix obiekt jako macierz transformacji wzorca i wywołuje go na wzorcu. Parametry matrix - DOMMatrix, który będzie używany jako macierz transformacji wzorca. Wartość zwracana undefined.

Zobacz też:
canvas fillStyle - Kolor lub styl wypełnienia do wykorzystania wewnątrz kształtów, domyślny #000 czarny
canvas strokeStyle - Kolor lub styl linii obrysu wokół kształtów, domyślny #000 czarny
DOMMatrix - 

 

Please publish modules in offcanvas position.