SVG 漸變- 放射性


SVG 放射性漸變 - <radialGradient>

<radialGradient>元素用於定義放射性漸變。

<radialGradient>標籤必須嵌套在<defs>的內部。<defs>標籤是definitions的縮寫,它可對諸如漸變之類的特殊元素進行定義。


實例 1

定義一個放射性漸變從白色到藍色橢圓:

下麵是SVG代碼:

實例

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<defs>
<radialGradient id="grad1" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" style="stop-color:rgb(255,255,255);
      stop-opacity:0" />
<stop offset="100%" style="stop-color:rgb(0,0,255);stop-opacity:1" />
</radialGradient>
</defs>
<ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad1)" />
</svg>

對於Opera用戶:(右鍵單擊SVG圖形預覽源)。

代碼解析:

  • <radialGradient>標籤的 id 屬性可為漸變定義一個唯一的名稱
  • CX,CY和r屬性定義的最外層圓和Fx和Fy定義的最內層圓
  • 漸變顏色範圍可以由兩個或兩個以上的顏色組成。每種顏色用一個<stop>標籤指定。offset屬性用來定義漸變色開始和結束
  • 填充屬性把ellipse元素鏈接到此漸變

實例 2

定義放射性漸變從白色到藍色的另一個橢圓:

下麵是SVG代碼:

實例

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<defs>
<radialGradient id="grad1" cx="20%" cy="30%" r="30%" fx="50%" fy="50%">
<stop offset="0%" style="stop-color:rgb(255,255,255);
      stop-opacity:0" />
<stop offset="100%" style="stop-color:rgb(0,0,255);stop-opacity:1" />
</radialGradient>
</defs>
<ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad1)" />
</svg>

對於Opera用戶:(右鍵單擊SVG圖形預覽源)。