Canvas API๋ JavaScript์ HTML <canvas>
์๋ฆฌ๋จผํธ๋ฅผ ํตํด ๊ทธ๋ํฝ์ ๊ทธ๋ฆฌ๊ธฐ์ํ ์๋จ์ ์ ๊ณตํ๋ค. ๋ฌด์๋ณด๋ค๋ ์ ๋๋ฉ์ด์
, ๊ฒ์ ๊ทธ๋ํฝ, ๋ฐ์ดํฐ ์๊ฐํ, ์ฌ์ง ์กฐ์ ๋ฐ ์ค์๊ฐ ๋น๋์ค ์ฒ๋ฆฌ๋ฅผ ์ํด ์ฌ์ฉ๋๋ค.
๋จผ์ , HTML์์ ์๋์ <canvas>
ํ๊ทธ๊ฐ ๋ค์ด๊ฐ์ผ ํ๋ค.
<canvas id="canvas"></canvas>
๊ทธ๋ฆฌ๊ณ Javascript์์
<canvas>
ํ๊ทธ๋ฅผ ๋ถ๋ฌ์จ ๋ค getContext()
๋ฉ์๋๋ฅผ ํตํด ์บ๋ฒ์ค์ ๋๋ก์ ์ปจํ
์คํธ๋ฅผ ๋ฐํํ๋ ์ฝ๋๋ฅผ ์์ฑํ๋ค.
const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d');
ctx.fillStyle = 'green';
ctx.fillRect(10, 10, 150, 100);
์ผ์ ์ง์ ๋ถํฐ ์ํ๋ ์ง์ ๊น์ง ๋ผ์ธ์ ๊ทธ๋ฆฌ๊ณ ์ ํ๋ค๋ฉด ์๋์ ์ฝ๋๋ฅผ ์ฌ์ฉํ์ฌ ๊ทธ๋ ค๋ณผ ์ ์๋ค.
moveTo(x, y)
lineTo(x, y)
moveTo
์ lineTo
๋ฅผ ์ฌ์ฉํ๋ ์์๋ ์๋์ ๊ฐ๋ค.
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
ctx.beginPath(); // Start a new path
ctx.moveTo(30, 50); // Move the pen to (30, 50)
ctx.lineTo(150, 100); // Draw a line to (150, 100)
ctx.stroke(); // Render the path