SVG Gradyanları - Doğrusal


SVG Gradyanları

Degrade, bir renkten diğerine yumuşak bir geçiştir. Ayrıca aynı elemana birkaç renk geçişi uygulanabilir.

SVG'de iki ana gradyan türü vardır:

  • Doğrusal
  • Radyal

SVG Doğrusal Gradyan - <linearGradient>

<linearGradient> öğesi, doğrusal bir gradyan tanımlamak için kullanılır.

<linearGradient> öğesi, bir <defs> etiketi içinde yuvalanmalıdır. <defs> etiketi, tanımların kısaltmasıdır ve özel öğelerin (gradyanlar gibi) tanımını içerir.

Doğrusal gradyanlar, yatay, dikey veya açısal gradyanlar olarak tanımlanabilir:

  • y1 ve y2 eşit olduğunda ve x1 ve x2 farklı olduğunda yatay gradyanlar oluşturulur
  • x1 ve x2 eşit olduğunda ve y1 ve y2 farklı olduğunda dikey gradyanlar oluşturulur
  • Açısal gradyanlar, x1 ve x2 farklı olduğunda ve y1 ve y2 farklı olduğunda oluşturulur

örnek 1

Sarıdan kırmızıya yatay doğrusal gradyanlı bir elips tanımlayın:

Sorry, your browser does not support inline SVG.

İşte SVG kodu:

Örnek

<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>

Kod açıklaması:

  • <linearGradient> etiketinin id özelliği, degrade için benzersiz bir ad tanımlar.
  • <linearGradient> etiketinin x1, x2, y1,y2 öznitelikleri, degradenin başlangıç ​​ve bitiş konumunu tanımlar
  • Bir gradyan için renk aralığı iki veya daha fazla renkten oluşabilir. Her renk bir <stop> etiketi ile belirtilir. Ofset özelliği, degrade rengin nerede başlayıp nerede bittiğini tanımlamak için kullanılır.
  • fill niteliği, elips öğesini degradeye bağlar


Örnek 2

Sarıdan kırmızıya dikey doğrusal gradyanlı bir elips tanımlayın:

Sorry, your browser does not support inline SVG.

İşte SVG kodu:

Örnek

<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>

Örnek 3

Sarıdan kırmızıya yatay doğrusal gradyanlı bir elips tanımlayın ve elipsin içine bir metin ekleyin:

SVG Sorry, your browser does not support inline SVG.

İşte SVG kodu:

Örnek

<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>

Kod açıklaması:

  • <text> elemanı metin eklemek için kullanılır.