SVG 그라디언트 - 선형
SVG 그라디언트
그라디언트는 한 색상에서 다른 색상으로 부드럽게 전환되는 것입니다. 또한 동일한 요소에 여러 색상 전환을 적용할 수 있습니다.
SVG에는 두 가지 주요 유형의 그라디언트가 있습니다.
- 선의
- 방사형
SVG 선형 그라데이션 - <linearGradient>
<linearGradient> 요소는 선형 기울기를 정의하는 데 사용됩니다.
<linearGradient> 요소는 <defs> 태그 내에 중첩되어야 합니다. <defs> 태그는 정의의 줄임말이며 특수 요소(예: 그래디언트)에 대한 정의를 포함합니다.
선형 그라디언트는 수평, 수직 또는 각도 그라디언트로 정의할 수 있습니다.
- y1과 y2가 같고 x1과 x2가 다를 때 수평 그라디언트가 생성됩니다.
- x1과 x2가 같고 y1과 y2가 다를 때 수직 그라디언트가 생성됩니다.
- x1과 x2가 다르고 y1과 y2가 다를 때 각도 그래디언트가 생성됩니다.
실시예 1
노란색에서 빨간색으로 수평 선형 그라데이션으로 타원을 정의합니다.
다음은 SVG 코드입니다.
예시
<svg height="150" width="400">
<defs>
<linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
<stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
</linearGradient>
</defs>
<ellipse cx="200" cy="70" rx="85" ry="55"
fill="url(#grad1)" />
</svg>
코드 설명:
- <linearGradient> 태그의 id 속성은 그라디언트의 고유한 이름을 정의합니다.
- <linearGradient> 태그의 x1, x2, y1,y2 속성은 그래디언트의 시작 및 끝 위치를 정의합니다.
- 그라디언트의 색상 범위는 두 가지 이상의 색상으로 구성될 수 있습니다. 각 색상은 <stop> 태그로 지정됩니다. offset 속성은 그래디언트 색상이 시작하고 끝나는 위치를 정의하는 데 사용됩니다.
- 채우기 속성은 타원 요소를 그라디언트에 연결합니다.
실시예 2
노란색에서 빨간색으로 수직 선형 그라데이션으로 타원을 정의합니다.
다음은 SVG 코드입니다.
예시
<svg height="150" width="400">
<defs>
<linearGradient id="grad2" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
<stop offset="100%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
</linearGradient>
</defs>
<ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad2)" />
</svg>
실시예 3
노란색에서 빨간색으로 수평 선형 그라데이션으로 타원을 정의하고 타원 내부에 텍스트를 추가합니다.
다음은 SVG 코드입니다.
예시
<svg height="150" width="400">
<defs>
<linearGradient id="grad3" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
<stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
</linearGradient>
</defs>
<ellipse cx="200" cy="70" rx="85" ry="55"
fill="url(#grad3)" />
<text fill="#ffffff" font-size="45" font-family="Verdana" x="150" y="86">
SVG</text>
</svg>
코드 설명:
- <text> 요소는 텍스트를 추가하는 데 사용됩니다.