• 회원가입
  • 로그인
  • 구글아이디로 로그인

[image] HTML - <svg> 태그 - 그림그리기 (= 동적그림 = svg태그 = 에스브이지태그)

목차

  1. <svg> 예제 - 그림 그리기 (예: 원 모양)
  2. <svg> 정의
  3. <svg> vs. <canvas> 비교
  4. <svg> 예제 - 열쇠 모양 아이콘
  5. <svg> 관련 참고사이트


<svg> 예제 - 그림 그리기 (예: 원 모양)

 

<svg width="100" height="100">

  <circle cx="50" cy="50" r="40" stroke="red" stroke-width="10" fill="yellow" />

  svg 지원 않는 브라우저는 개나 줘버려.

</svg>

 

결과보기

 

<svg> 정의

 

웹상에서 2차원 벡터 그래픽을 표현하는 XML 기반의 마크업 언어.

 

※ 벡터 : 크기와 방향을 동시에 나타내는 물리량
※ XML : HTML의 단점 (=특수 문자 표현 제약)을 보완위해 등장한 마크업 언어
※ 마크업 언어 : 활자 크기라든가 색깔 등 웹 문서를 표현하기 위한 언어

 


 

1. 

  • SVG : (Scalable Vector Graphics : 가변 벡터 도형 처리)의 약자. 
  • 원, 삼각형, 사각형, 별 모양, 로고 등 다양한 그래픽 이미지 구현 가능


2. 

IE9 이상 주요 최신 브라우저 지원.


3. MDN <svg> 예제보기

https://developer.mozilla.org/en-US/docs/Web/SVG/Element/svg
 

 

<svg> vs. <canvas> 비교

   <canvas>  <svg>
 특징
1.
2차원 그래픽 표현 위한 HTML 언어


2.
HTML5에서 새로 도입

3.
픽셀 단위로 렌더링 되며, 

한번 이미지가 그려지면, 브라우저는 잊어 버림.
그 결과, 위치 바뀔 경우 다시 그려야 함.


1.
2차원 그래픽 표현 위한 XML 기반 언어

2.
HTML5에서 새로 도입

3.
그려진 이미지는 객체로 인식되며,

객체 속성이 변하면 자동으로 반영 됨.
그 결과, 위치나 모양 변화면 자동 반영됨.

차이점
1. 해상도에 영향 받음
2. 이벤트 핸들러 지원 안 함.
3. 텍스트 출력 지원 안 함. (오직 그래픽만 지원)
4. 이미지를 png나 jpg 형식으로 저장 가능
5. 그래픽 기반의 게임에 적합
1. 해상도에 영향 받음
2. 이벤트 핸들러 지원 함.
3. 큰 렌더링 갖은 애플리케이션에 최적화 
4. 복잡하면 렌더링이 늦을 수 있음.
5. 게임 애플리케이션에 부적합
 

<svg> 예제 - 열쇠 모양 아이콘

프라이머리키 (Primary Key)

 

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2m5.6-4c-.8-2.3-3-4-5.6-4-3.3 0-6 2.7-6 6s2.7 6 6 6c2.6 0 4.8-1.7 5.6-4H16v4h4v-4h3v-4H12.6Z"></path></svg>

 

결과보기


포린키 (Foreign Key)

 

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7.5 3C5 3 3 5 3 7.5S5 12 7.5 12c2 0 3.6-1.2 4.2-3H15v3h3V9h3V6h-9.3c-.6-1.8-2.2-3-4.2-3m0 3C8.3 6 9 6.7 9 7.5S8.3 9 7.5 9 6 8.3 6 7.5 6.7 6 7.5 6m2.5 8c-1.6 0-4 1.1-4 4s2.4 4 4 4h1v-2h-1c-.3 0-2-.1-2-2 0-1.8 1.5-2 2-2h1v-2m2 0v2h1c.3 0 2 .1 2 2 0 1.8-1.5 2-2 2h-1v2h1c1.6 0 4-1.1 4-4s-2.4-4-4-4m-5 3v2h6v-2H9Z"></path></svg>

 

결과보기

 

<svg> 관련 참고사이트

 

thenounproject ★

https://thenounproject.com/

※ png, svg 포맷 형태의 다양한 이미지 다운 가능.

※ <img> 태그 이용해 노출 가능. 

 

svg 배우기

http://tutorials.jenkov.com/svg/index.html

 

svg 예제들

https://codepen.io/search/pens?q=svg

 

mdn svg 강의

https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial

https://developer.mozilla.org/ko/docs/Web/SVG/Tutorial

 

svg 모양 생성기

https://getwaves.io/

https://www.blobmaker.app/

 



분류 제목
attribute HTML - max 속성 - (숫자|날짜)의 최대값 지정 (= max속성 = 맥스속성) ※ 최댓값
attribute HTML - maxlength 속성 ★ - 입력 가능한 최대 글자 개수 지정 (= maxlength속성 = …
attribute HTML - media 속성 - 링크된 웹문서가 어떤 미디어/기기에 최적화 된 상태인지 표시 (= media…
attribute HTML - method 속성 ★★★ - 폼데이터 전송방식 지정 (= method속성 = 메서드속성/메소드속…
attribute HTML - min 속성 - (숫자|날짜)의 최소값 지정 (= min속성 = 민속성) ※ 최솟값
attribute HTML - multiple 속성 ★ - 복수 (파일업로드/이메일입력/옵션선택) 허용 (= multiple속…
attribute HTML - muted 속성 - (오디오/비디오) 묵음 처리 (= muted속성 = 뮤티드속성) ※ 소리 안…
attribute HTML - name 속성 ★★★ - 요소 이름 지정 (= name속성 = 네임속성) ※ 요소이름/요소명
attribute HTML - novalidate 속성 - 폼데이터 제출 시, 유효성 평가 생략 (= novalidate속성 …
attribute HTML - onabort 속성 - 미디어 파일 로드 중단 이벤트 발생 시 실행할 코드 정의 (= onabo…
attribute HTML - onafterprint 속성 - 인쇄 대화상자 닫힌 이후 이벤트 발생 시 실행할 코드 정의 (=…
attribute HTML - onbeforeprint 속성 - 인쇄 대화상자 나타나기 이전 이벤트 발생 시 실행할 코드 정의…
attribute HTML - onbeforeunload 속성 - 사용자가 웹페이지 떠날 때 떠나기 전 실행 (= onbefo…
attribute HTML - onblur 속성 ★ - 포커스 해제 이벤트 시 실행 (= onblur속성 = 온블러속성) ※ …
attribute HTML - oncanplay 속성 - 재생 시작 가능 시 실행 (= oncanplay속성 = 온캔플레이속성…
attribute HTML - oncanplaythrough 속성 - 버퍼링 위해 멈춤 없이 전체 재생 가능 시 실행 (= o…
attribute HTML - onchange 속성 ★ - 요소값 변경 이벤트 시 실행 (= onchange속성 = 온체인지속…
attribute HTML - onclick 속성 ★ - 요소 클릭 이벤트 시 실행 (= onclick속성 = 온클릭속성) ※…
attribute HTML - oncontextmenu 속성 - 마우스오른쪽메뉴선택 시 실행 (= oncontextmenu속성…
attribute HTML - oncopy 속성 - 요소의 텍스트나 이미지 태그를 복사 시 실행 (=oncopy속성 = 온카피…
11/18
목록
찾아주셔서 감사합니다. Since 2012