Canvas API 2 - μΊλ²μ€μ λν 그리기
MDN + κΈ°ν μλ£λ€μ 곡λΆνλ©° μ΄ν΄ν λ΄μ©μ μ 리ν κΈμ λλ€.
그리λ (νΉμ μ’ν곡κ°) λΌλ κ°λ μ μ΄ν΄ν΄μΌ νλ€. κΈ°λ³Έμ μΌλ‘ 그리λμ 1λ¨μλ μΊλ²μ€μ 1ν½μ μ΄λ€. 그리λμ μμ μ μ’μΈ‘μλ¨ (0,0) μ΄κ³ , λͺ¨λ μμλ€μ μ΄ μμ μ κΈ°μ€μΌλ‘ μμΉλλ€. μ΄ κ°λ μ΄ μ€μνλ°, μΊλ²μ€ μμ μλ λͺ¨λ λνλ€μ μμΉλ κ° λνμ μ’μΈ‘μλ¨ μμ μ κΈ°μ€μΌλ‘ μ‘λλ€.
μ§μ¬κ°ν 그리기
<canvas>λ μ§μ¬κ°ν νλλ§ κΈ°λ³Έμ μΌλ‘ μ 곡νλ©°, λ€λ₯Έ λνλ€μ νλ νΉμ νλ μ΄μμ Path μ μ¬λ¬ μ μΌλ‘ μ΄μ΄μ§ μ μΌλ‘ λ§λ€μ΄μ§λ€.
fillRect(x, y, width, height) - μμΉ λ μ§μ¬κ°νμ κ·Έλ¦°λ€. strokeRect(x, y, width, height) - μ§μ¬κ°ν μ€κ³½μ μ κ·Έλ¦°λ€. clearRect(x, y, width, height) - νΉμ λΆλΆμ μ§μ°λ μ§μ¬κ°νμ΄λ©°, μ΄ μ§μμ§ λΆλΆμ μμ ν ν¬λͺ ν΄μ§λ€.
κ²½λ‘(Path) 그리기
<canvas> μμμμ μ§μ¬κ°ν μ΄μΈμ λͺ¨λ λνκ³Ό μ μ λ§λλ κ²μ κ²½λ‘ path μ΄λ€. κ²½λ‘λ μ λ€μ μ§ν©μ΄λ©°, μ λ€μ΄ λͺ¨μ¬ μ μ΄ μ¬λ¬κ°μ§ λν, 곑μ μ λ§λ€κ³ λκ»μ μλ λνλΈλ€.
그리λ λ¨κ³
-
κ²½λ‘λ₯Ό μμ±νλ€. beginPath() λ©μλλ₯Ό μ¬μ©νμ¬ κ²½λ‘λ₯Ό μμ±νλ€. κ²½λ‘λ λνμ μ΄λ£¨λ νμκ²½λ‘ (μ , μμΉ λ±)λ€μ μ§ν©μΌλ‘ μ΄λ£¨μ΄μ§λλ°, beginPath λ©μλκ° νΈμΆλ λλ§λ€ νμ κ²½λ‘μ λͺ¨μμ μ΄κΈ°νλλ©°, μλ‘μ΄ λνμ 그릴μ μλ€. κ²½λ‘λ₯Ό μ΄κΈ°νν μ§νμλ νμ λͺ ννκ² moveTo(x, y) λ‘ μμ μμΉλ₯Ό μ€μ νλ κ²μ΄ μ’λ€.
-
그리기 λͺ λ Ήμ΄λ₯Ό μ¬μ©νμ¬ κ²½λ‘μμ κ·Έλ¦°λ€. κ²½λ‘κ° μμ±λλ©΄, μ΄ν 그리기 λͺ λ Ήλ€μ κ²½λ‘λ₯Ό ꡬμ±νκ³ λ§λλλ° μ¬μ©λλ€.
-
κ²½λ‘κ° νλ² λ§λ€μ΄μ§λ©΄, κ²½λ‘λ₯Ό λ λλ§ νκΈ° μν΄μ μ€κ³½μ μ 그리거λ λν λ΄λΆλ₯Ό μ±μΈ μ μλ€.
-
μ νμ¬νμΌλ‘ closePath() λ©μλλ₯Ό νΈμΆνλ€. νμ¬ μ μμΉμ μμμ μμΉλ₯Ό μ§μ μΌλ‘ μ΄μ΄μ λνμ λ«λλ€. fill() λ©μλ νΈμΆ μ μ΄λ¦° λνμ μλμΌλ‘ λ«νκ² λμ΄ closePath() λ©μλλ₯Ό νΈμΆνμ§ μμλ λλ€.
μΌκ°ν 그리기
κ²½λ‘λ₯Ό μμ±νκ³ , νμ μ κ°μ΄λ° μ§μ μΌλ‘ μ΄λμν¨ λ€μ, κ°μ΄λ° μ§μ (150, 150) μμ μλ‘ λ»λ μ§μ (170, 130) 1κ°, (170, 130) μ’νμμ μλλ‘ λ»λ μ§μ 1κ° (170, 170) λ₯Ό κ·Έλ¦¬κ³ fill() νλ©΄ μΈ μ§μ μ΄ μ§μ μΌλ‘ μ°κ²°λμ΄ μκΉμ΄ μΉ ν΄μ§κ³ μΌκ°νμ΄ λλ€.
lineTo(x,y) μ§μ μ 그릴 λ μ¬μ©νλ λ©μλμ΄λ€. μ§μ μ μμμ μ μ§μ κ²½λ‘μ λμ μ΄λ€. x, y μ’νλ‘ μ΄μ΄μ§λ μ§μ μ κ·Έλ €μ€λ€.
moveTo(x,y) μμμ μ x, y μ’νλ‘ μ΄λμν€λ λ©μλμ΄λ€.
fill() κ³Ό stroke() μ μ°¨μ΄?
fill()μ κ²½λ‘ μμ λͺ¨λ μ±μλ²λ¦¬κ³ , stroke λ μ€κ³½μ λ§ κ·Έλ €μ£Όλ λ©μλμ΄λ€. fill μ κ²½λ‘λ₯Ό μ±μ°λ©΄μ κ·Έ λνμ μλμΌλ‘ λ«λλ°, μ€κ³½μ μΌκ°νμμλ κ·Έλ μ§ μκΈ° λλ¬Έμ λ μ λ§ κ·Έλ €μ§λ―λ‘, λ°λμ closePath() λ©μλλ₯Ό νΈμΆν΄ μ£Όμ΄μΌ νλ€.
κ²½λ‘ μ λ«μμ€ κ²½μ°
κ²½λ‘ λ«μμ€ κ²½μ°