svg基础(十)滤镜-feMerge(多滤镜叠加滤镜)

feMerge:多滤镜叠加滤镜

允许同时应用滤镜效果而不是按顺序应用滤镜效果。利用result存储别的滤镜的输出可以实现这一点,然后在一个 <feMergeNode>子元素中访问它

1 语法

<feMerge>
    <feMergeNode in=""></feMergeNode>
</feMerge>

2 feMergeNode属性

  • in SourceAlpha,SourceGraphic,其他滤镜的result

SourceAlpha和SourceGraphic的区别:

SourceGraphic的颜色是全彩

SourceAlpha是一个与图像具有相同尺寸的提取了其中的黑色部分可以使用它来创建更好的阴影

3 示例

 <svg>
        <defs>
            <filter id="gaussian" x="0" y="0">
                <feGaussianBlur in="SourceAlpha" stdDeviation="5" result="blur"></feGaussianBlur>
                <feOffset in="blur" dx="10" dy="10" result="offsetBlur"></feOffset>
                <feMerge>
                    <feMergeNode in="offsetBlur" />
                    <feMergeNode in="SourceGraphic" />
                </feMerge>
            </filter>
        </defs>
        <rect x="10" y="10" width="100" height="100" fill="black" filter="url(#gaussian)"></rect>
    </svg>
  • <feGaussianBlur in=“SourceAlpha” stdDeviation=“5” result=“blur” /> 会生成一个模糊效果

result=‘blur’,这个是 SVG 的一个特性,不同滤镜作用的效果可以通过 result 产出一个中间结果(也称为 primitives 图元),其他滤镜可以使用 in 属性导入不同滤镜产出的 result,继续操作。

  • <feOffset> 滤镜还是很好理解的,使用 in 拿到了上一步的结果 result = ‘blur’,然后做了一个简单的位移。
  • <feMergeNode in=“offsetBlur” /> 表示了上述两个滤镜的最终输出结果 offsetBlur,也就是阴影的部分
  • <feMergeNode in=“SourceGraphic” /> 中的 in=“SourceGraphic” 关键词表示图形元素自身将作为 原语的原始输入

在不同滤镜中利用 result 和 in 属性,可以实现在前一个基本变换操作上建立另一个操作,比如我们的例子中就是添加模糊后又添加位移效果。

在这里插入图片描述

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-02-14 12:14:01       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-14 12:14:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-14 12:14:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-14 12:14:01       18 阅读

热门阅读

  1. gorm day6

    2024-02-14 12:14:01       25 阅读
  2. 树结构 严蔚敏 数据结构代码

    2024-02-14 12:14:01       29 阅读
  3. Spring Cloud 路由和消息传递 (HTTP 路由)

    2024-02-14 12:14:01       31 阅读
  4. vue3 + Babylon.js 实现3D场景

    2024-02-14 12:14:01       38 阅读
  5. 14.6 OpenGL图元装配和光栅化:多边形

    2024-02-14 12:14:01       25 阅读
  6. 14.5 OpenGL图元装配和光栅化:线段

    2024-02-14 12:14:01       27 阅读
  7. c语言练习

    2024-02-14 12:14:01       28 阅读
  8. MD5 哈希

    2024-02-14 12:14:01       25 阅读
  9. Git入门

    Git入门

    2024-02-14 12:14:01      29 阅读