SVG 模糊效果


注意: Internet Explorer和Safari不支援SVG濾鏡!


<defs> 和 <filter>

所有網際網路的SVG濾鏡定義在<defs>元素中。<defs>元素定義短並含有特殊元素(如濾鏡)定義。

<filter>標籤用來定義SVG濾鏡。<filter>標籤使用必需的id屬性來定義向圖形應用哪個濾鏡?


SVG <feGaussianBlur>

例項 1

<feGaussianBlur> 元素是用於建立模糊效果:

fegaussianblur

下面是SVG程式碼:

範例

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <defs>
    <filter id="f1" x="0" y="0">
      <feGaussianBlur in="SourceGraphic" stdDeviation="15" />
    </filter>
  </defs>
  <rect width="90" height="90" stroke="green" stroke-width="3"
  fill="yellow" filter="url(#f1)" />
</svg>

線上執行 ?

對於Opera使用者:檢視SVG檔案(右鍵單擊SVG圖形預覽源)。

程式碼解析:

  • <filter>元素id屬性定義一個濾鏡的唯一名稱
  • <feGaussianBlur>元素定義模糊效果
  • in="SourceGraphic"這個部分定義了由整個影象建立效果
  • stdDeviation屬性定義模糊量
  • <rect>元素的濾鏡屬性用來把元素連結到"f1"濾鏡