<feDisplacementMap>
<feDisplacementMap>
SVG 滤镜基本元素使用来自 in2
的图像的像素值,以空间方式位移来自 in
的图像。
转换公式如下所示
P'(x,y) ← P(x + scale * (XC(x,y) - 0.5), y + scale * (YC(x,y) - 0.5))
其中 P(x,y)
是输入图像,in
,而 P'(x,y)
是目标。XC(x,y)
和 YC(x,y)
是由 xChannelSelector
和 yChannelSelector
指定的通道的组件值。
使用场景
属性
DOM 接口
此元素实现 SVGFEDisplacementMapElement
接口。
示例
html
<svg
width="200"
height="200"
viewBox="0 0 220 220"
xmlns="http://www.w3.org/2000/svg">
<filter id="displacementFilter">
<feTurbulence
type="turbulence"
baseFrequency="0.05"
numOctaves="2"
result="turbulence" />
<feDisplacementMap
in2="turbulence"
in="SourceGraphic"
scale="50"
xChannelSelector="R"
yChannelSelector="G" />
</filter>
<circle cx="100" cy="100" r="100" style="filter: url(#displacementFilter)" />
</svg>
规范
规范 |
---|
滤镜效果模块级别 1 # feDisplacementMapElement |
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。