[JavaScript] HTML5 와 Canvas

정은아·2022년 10월 3일

 . HTML5 와 Canvas

   
    * 웹 페이지 그래픽의 전통적인 방법
        1. 사진이나 그림 <img> 태그 이용
	2. 그래픽은 자바 애플릿이나 플래시 등 플러그인 사용

	=> 문제점이 많다.

   . 캔버스 도입

   - 플러그인의 도움없이 자바스크립트 코드로
     웹 페이지에서 자유롭게 그래픽을 수행할 수 있는 캔버스 기능을 도입

   - 캔버스 기능은 새로 도입된 <canvas> 태그로
     브라우저 화면상에 할당된 공간에서 이루어진다.

   - 캔버스의 그래픽 그리기는 자바스크립트 코드로만 가능하다.


  <canvas> 태그 형식

      <canvas id="캔버스 객체 id"
              style="CSS3 스타일 시트"
	      width="캔버스 영역의 너비"
	      height="캔버스 영역의 높이">

	      이 태그는 지원하지 않는 브라우저가 출력할 HTML 텍스트
      </canvas>

      : width, height : 캔버스가 만들어지는 영역의 크기(픽셀 단위)로
                        생략 가능. 각각 디폴트 300, 150 픽셀

       - 브라우저는 <canvas>태그가 만들어진 영역에 
         사각형의 빈 캔버스 공간을 할당하며,
	 하나의 웹 페이지에 여러 개의 캔버스를 만들 수 있다.

   . 캔버스 그리기의 2가지 허용

    - 첫번째 방법은 beginPath()를 호출하여 빈 경로를 만들고,
      경로(Path)에 먼저 선, 원, 사각형 등의 도형을 모아 놓고 
      한번에 캔버스에 그림을 그리는 방법이다.

    - 두번째 방법은 경로에 담지 않고 바로 캔버스에 그리는 방법이다.

   . 컨텍스트 객체의 메소드

     . beginPath()      이전 경로를 모두 지우고 새로 시작한다.(경로와 관련)
     . closePath()      경로의 끝과 시작점을 연결하는 선을 추가하고 경로를 닫는다. (경로와 관련)
     . moveTo()         경로의 새 점을 만든다. (경로와 관련)
     . lineTo()         경로의 끝 점과 연결하는 선을 추가한다. (경로와 관련)
     . rect()           경로에 사각형을 추가한다.(경로와 관련)
     . arc()            경로에 원호를 추가한다.(경로와 관련)
     . fill()           경로에 만들어진 모든 도형(사각형과 원호)을 외곽선 없이
                        내부만 색으로 채워 캔버스를 그린다. (경로에 있는 도형 캔버스 그리기)
     .stroke()          경로에 담겨 있는 모든 도형을 외곽선만 캔버스에 그린다.(경로에 있는 도형 캔버스 그리기)

     
     . clearRect()     캔버스에서 사각형 영역을 채운다.(캔버스에 바로 그리기)
     . fillRect()      캔버스에 외곽선 없이 사각형 영역을 색으로 바로 칠한다.(캔버스에 바로 그리기)
     . strokeRect()    사각형을 경로에 추가하지 않고 캔버스에 바로 그린다.(캔버스에 바로 그리기)
     . strokeText()    텍스트 (문자열)을 캔버스에 바로 그린다.(캔버스에 바로 그리기)
     . drawImage()     이미지를 캔버스에 바로 그린다.(캔버스에 바로 그리기)
    
	
    
profile
꾸준함의 가치를 믿는 개발자

0개의 댓글