SVG 模糊效果
<defs> 和 <filter>
所有 SVG 滤镜都在 <defs>
元素中定义。<defs>
元素是定义(definitions)的缩写,包含对特殊元素(比如滤镜)的定义。
<filter>
元素用于定义 SVG 滤镜。<filter>
元素有一个必需的 id 属性,用于标识滤镜。然后图形会指向要使用的滤镜。
SVG <feGaussianBlur>
例子 1
<feGaussianBlur>
元素用于创建模糊效果:
这是 SVG 代码:
<svg height="110" width="110"> <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>
代码解释:
- <filter> 元素的 id 属性定义了滤镜的唯一名称
- <feGaussianBlur> 元素定义模糊效果
- in="SourceGraphic" 定义为整个元素创建的效果
- stdDeviation 属性定义模糊量
- <rect> 元素的 filter 属性将该元素链接到 "f1" 滤镜