SVG chiziqli gradient


ULASHISH

SVG gradientlar

Gradient — bir rangdan boshqa rangga silliq o‘tish. Bundan tashqari, bitta elementga bir nechta rang o‘tishlarini qo‘llash mumkin.

SVG’da gradientlarning ikki turi mavjud:

  • Chiziqli gradientlar — <linearGradient> bilan belgilanadi
  • Radial gradientlar — <radialGradient> bilan belgilanadi

Gradient ta’riflari <defs> yoki <svg> elementi ichiga joylashtiriladi. <defs> elementi "definitions" (ta’riflar) so‘zining qisqartmasi bo‘lib, maxsus elementlar (masalan, gradientlar) ta’riflarini o‘z ichiga oladi.

Har bir gradientda uni aniqlaydigan id atributi bo‘lishi shart. So‘ngra grafika/rasm qaysi gradientdan foydalanishini shu identifikator orqali ko‘rsatadi.


SVG chiziqli gradient - <linearGradient>

<linearGradient> elementi chiziqli gradientni (bir rangdan boshqa rangga, bir yo‘nalishdan boshqa yo‘nalishga chiziqli o‘tishni) belgilash uchun ishlatiladi.

<linearGradient> elementi ko‘pincha <defs> elementi ichiga joylashtiriladi.

Chiziqli gradientlar gorizontal, vertikal yoki burchakli gradient sifatida belgilanishi mumkin:

  • Gorizontal chiziqli gradientlar (bu standart holat) chapdan o‘ngga yo‘naladi (bunda x1 va x2 farq qiladi, y1 va y2 esa teng bo‘ladi)
  • Vertikal chiziqli gradientlar yuqoridan pastga yo‘naladi (bunda x1 va x2 teng, y1 va y2 esa farq qiladi)
  • Burchakli chiziqli gradientlar x1 va x2 farq qilganda hamda y1 va y2 farq qilganda hosil bo‘ladi

Gorizontal chiziqli gradient

Sariqdan qizilga o‘tuvchi gorizontal chiziqli gradientli ellips:

Sorry, your browser does not support inline SVG.

SVG kodi quyidagicha:

Misol

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">   <defs>     <linearGradient id="grad1" x1="0%" x2="100%" y1="0%" y2="0%">       <stop offset="0%" stop-color="yellow" />       <stop offset="100%" stop-color="red" />     </linearGradient>   </defs>   <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad1)" /> </svg>
O‘zingiz sinab ko‘ring »

Kod izohi:

  • <linearGradient> elementining id atributi gradient uchun yagona nom belgilaydi
  • <linearGradient> elementining x1, x2, y1,y2 atributlari gradientning x va y bo‘yicha boshlang‘ich va oxirgi nuqtalarini belgilaydi
  • Gradient ranglari ikki yoki undan ortiq <stop> elementi bilan belgilanadi
  • <stop>’dagi stop-color atributi gradient to‘xtash nuqtasining rangini belgilaydi
  • <stop>’dagi offset atributi gradient to‘xtash nuqtasi qayerda joylashishini belgilaydi
  • <ellipse> elementining fill atributi elementni "grad1" gradientiga bog‘laydi

Gorizontal chiziqli gradient

Sariqdan yashilga, so‘ng qizilga o‘tuvchi gorizontal chiziqli gradientli ellips:

Sorry, your browser does not support inline SVG.

SVG kodi quyidagicha:

Misol

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">   <defs>     <linearGradient id="grad2" x1="0%" x2="100%" y1="0%" y2="0%">       <stop offset="0%" stop-color="yellow" />       <stop offset="50%" stop-color="green" />       <stop offset="100%" stop-color="red" />     </linearGradient>   </defs>   <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad2)" /> </svg>
O‘zingiz sinab ko‘ring »


Vertikal chiziqli gradient

Sariqdan qizilga o‘tuvchi vertikal chiziqli gradientli ellips:

SVG kodi quyidagicha:

Misol

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">   <defs>     <linearGradient id="grad3" x1="0%" y1="0%" x2="0%" y2="100%">       <stop offset="0%" stop-color="yellow" />       <stop offset="100%" stop-color="red" />     </linearGradient>   </defs>   <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad3)" /> </svg>
O‘zingiz sinab ko‘ring »

Matnli gorizontal chiziqli gradient

Sariqdan qizilga o‘tuvchi gorizontal chiziqli gradientli ellips va ellips ichiga qo‘shilgan matn:

SVG Sorry, your browser does not support inline SVG.

SVG kodi quyidagicha:

Misol

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">   <defs>     <linearGradient id="grad4" x1="0%" y1="0%" x2="100%" y2="0%">       <stop offset="0%" stop-color="yellow" />       <stop offset="100%" stop-color="red" />     </linearGradient>   </defs>   <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad4)" />   <text fill="#ffffff" font-size="45" font-family="Verdana" x="50" y="86">SVG</text> </svg>
O‘zingiz sinab ko‘ring »

Kod izohi:

  • <text> elementi matn qo‘shish uchun ishlatiladi

Burchakli chiziqli gradient

Sariqdan qizilga o‘tuvchi burchakli chiziqli gradientli ellips:

Sorry, your browser does not support inline SVG.

SVG kodi quyidagicha:

Misol

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">   <defs>     <linearGradient id="grad5" x1="0%" y1="100%" x2="100%" y2="0%">       <stop offset="0%" stop-color="yellow" />       <stop offset="100%" stop-color="red" />     </linearGradient>   </defs>   <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad5)" /> </svg>
O‘zingiz sinab ko‘ring »

SVG <linearGradient> atributlari

Atribut Tavsif
id Majburiy. <linearGradient> elementi uchun yagona id belgilaydi
x1 Gradient vektori boshlang‘ich nuqtasining x pozitsiyasi. Standart qiymat — 0%
x2 Gradient vektori oxirgi nuqtasining x pozitsiyasi. Standart qiymat — 100%
y1 Gradient vektori boshlang‘ich nuqtasining y pozitsiyasi. Standart qiymat — 0%
y2 Gradient vektori oxirgi nuqtasining y pozitsiyasi. Standart qiymat — 0%
spreadMethod Gradientning yoyilish usulini belgilaydi. Mumkin bo‘lgan qiymatlar: "pad", "reflect", "repeat". Standart qiymat — "pad"
href Shablon sifatida ishlatiladigan boshqa <linearGradient> elementiga havolani belgilaydi
gradientUnits x1, x2, y1, y2 uchun koordinatalar tizimini belgilaydi. Mumkin bo‘lgan qiymatlar: "userSpaceOnUse" va "objectBoundingBox". Standart qiymat — "objectBoundingBox"
gradientTransform Gradient koordinatalar tizimiga qo‘shimcha transformatsiyani belgilaydi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!