상세 컨텐츠

본문 제목

html svg 태그

쿠쿠 작업장(home page)/web 관련

by eunclove 2019. 11. 27. 14:52

본문

728x90
반응형

html 로 그림을 그릴수 있는 svg 태그 벡터 방식이라는데 태그로 일일히 그림을 그리는것 보다는 그냥 일러에서 그리는게 정신적으로는 편함. ㅡㅡ;;


하지만 유용한 것들이 많아서 그냥 끄적끄적......


svg element 사용법은 다음과 같다.


<svg>

<shapes명 />

</svg>


사용은 일반 html 코딩과 같은 구조 이며 안에 shape명만 적어주면 된다. 


shape 의 종류는 아래와 같다.


Rectangle <rect> 사각형

Circle <circle> 원

Ellipse <ellipse> 타원

Line <line> 선

Polyline <polyline> 꺽이는 선

Polygon <polygon> 다각형

Path <path> 흠... 패치를 어떻게.......그냥 선연결이라고 해야하나?


shape 종류의 사용법

<rect>

<svg>

<rect width="가로" height="세로" style="fill:배경색; stroke-width:선 굵기; stroke:선 색깔;" />

</svg>


박스의 기본 형태이며 width값이나 height값은 일반 html코딩과 다를게 없다. 단 style에 들어가는 내용이 조금 틀리다. 

background-color -> fill

border-widht -> stroke-width

border-color -> stroke

이렇게 주면 된다.


<svg>

<rect x="x좌표값" y="y좌표값" width="가로" height="세로" style="fill:배경색; stroke-width:선 굵기; stroke:선 색깔;" />

</svg>


<svg> 안 shape의 좌표를 지정해 줄수도 있다. x,y 값으로.


<circle>

<svg>

<circle cx="x좌표값" cy="y좌표값" r="반지름" style="fill:배경색; stroke-width:선 굵기; stroke:선 색깔;" />

</svg>

원의 형태이며

박스의 방식과 같으며 단지 틀린 부분이 있다면 좌표값 설정과 반지름의 설정이 바뀌었다.


<ellipse>

<svg>

<ellipse cx="x좌표값" cy="y좌표값" rx="x축반지름" ry="y축 반지름"  style="fill:배경색; stroke-width:선 굵기; stroke:선 색깔;" />

</svg>

타원의 형태이며

원의 방식과 같지만 반지름설정이 틀리다.


<line>

<svg>

<line x1="시작 x좌표값" y1="시작 y좌표값" x2="끝 x좌표값" y2="끝 y좌표값"  style="stroke-width:선 굵기; stroke:선 색깔;" />

</svg>

선은 시작시의 좌표값과 끝나는 점의 좌표값을 입력해주면 된다.


<polyline>

<svg>

<polyline points="x,y x,y x,y x,y"  style="stroke-width:선 굵기; stroke:선 색깔;" />

</svg>

꺽인선은 points를 이용하여 각각의 선을 그어주면 된다.

예시 

points="0,20 20,20, 20,40 40,40 40,80"

이렇게 주게 되면 x=0에서 y=20으로 선을 긋고 다시 x=20에서 y=20 으로 선을 긋는다. 이런식으로 반복하다 보면 계단 형태의 선이 만들어 진다.


<polygon>

<svg>

<polygon points="x,y x,y x,y x,y"  style="fill:배경색; stroke-width:선 굵기; stroke:선 색깔;" />

</svg>

polyline와 같은 방식이며 다른점은 선과 면의 차이 정도......



<path>

솔직히 패치를 쓸꺼면 일러를 쓰는게 ㅜ,.ㅡ

그래도 필요할지 몰라 커맨드 정리

M=시작위치

L=선

H=가로선

V=세로선

C=꺽인

S=곡선

Q=2차 꺽인선

T=2차 곡선

A=타원형 선

Z=패치 닫음

<svg>

<path d="M100 중간에 각 커맨드에 따른 값 끝에는  Z"   style="fill:배경색; stroke-width:선 굵기; stroke:선 색깔;" />

</svg>

여러 선만을 쓸 경우 Z는 안써도 됨 즉 일러에서 패치를 점을 찍으면서 그림을 그리는 것과 같다. 하지만 그럴려면 에휴.........

728x90

'쿠쿠 작업장(home page) > web 관련' 카테고리의 다른 글

input type 숫자만 입력 받기  (0) 2017.04.04
html select link 거는법  (0) 2016.11.18
em 계산  (0) 2014.11.13
ie 문서모드 설정  (0) 2014.10.21
ie9 미만 html5 적용하기  (0) 2014.09.02

관련글 더보기

댓글 영역