⊗jsSpCnvRc 263 of 294 menu

Risanje pravokotnikov prek canvas v JavaScriptu

Kvadratov in pravokotnikov ni nujno risati s kombinacijami moveTo, lineTo - za to obstajajo enostavnejše metode. Oglejmo si jih.

Metoda strokeRect

Metoda strokeRect(x, y, širina, višina) riše obris pravokotnika na dani točki. Prva dva parametra določata koordinate točke, kjer bo zgornji levi kot narisanega pravokotnika.

Narišimo pravokotnik z strokeRect (predpostavimo, da ctx že obstaja):

<canvas width="200" height="200" style="background: #f4f4f4;"></canvas> let canvas = document.querySelector('canvas'); let ctx = canvas.getContext('2d'); ctx.strokeRect(50, 50, 100, 75);

:

Metoda fillRect

Metoda fillRect(x, y, širina, višina) deluje enako kot strokeRect, vendar riše zapolnjen pravokotnik. Poglejmo primer:

<canvas width="200" height="200" style="background: #f4f4f4;"></canvas> let canvas = document.querySelector('canvas'); let ctx = canvas.getContext('2d'); ctx.fillRect(50, 50, 100, 75);

:

Metoda rect

Naslednja metoda rect(x, y, širina, višina) prav tako riše pravokotnik. Vendar postane ta pravokotnik viden šele, ko uporabimo metodo stroke ali fill. V prvem primeru bo to obris, v drugem - zapolnjena oblika.

Narišimo obris z rect:

<canvas width="200" height="200" style="background: #f4f4f4;"></canvas> let canvas = document.querySelector('canvas'); let ctx = canvas.getContext('2d'); ctx.rect(50, 50, 100, 75); ctx.stroke();

:

In sedaj narišimo zapolnjeno obliko:

<canvas width="200" height="200" style="background: #f4f4f4;"></canvas> let canvas = document.querySelector('canvas'); let ctx = canvas.getContext('2d'); ctx.rect(50, 50, 100, 75); ctx.fill();

:

Metoda clearRect

Naslednja metoda clearRect(x, y, širina, višina) deluje kot radirka, ki očisti pravokotno območje in naredi vsebino popolnoma prozorno.

Narišimo kvadrat s fillRect in izbrišimo njegov del s clearRect:

<canvas width="200" height="200" style="background: #f4f4f4;"></canvas> let canvas = document.querySelector('canvas'); let ctx = canvas.getContext('2d'); ctx.fillRect(50, 50, 100, 100); ctx.clearRect(75, 75, 50, 50);

:

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni