📜  SVG FETurbulenceElement.baseFrequencyX 属性(1)

📅  最后修改于: 2023-12-03 15:20:23.465000             🧑  作者: Mango

SVG FETurbulenceElement.baseFrequencyX 属性

SVG FETurbulenceElement.baseFrequencyX 属性用于设置SVG噪声纹理滤镜()的基本频率X轴的值。

语法
<feTurbulence baseFrequencyX="value" />

其中,value是一个非负浮点数,表示基本频率的X方向分量。

描述

SVG滤镜通过将基本频率和噪声函数应用于图像,生成噪声纹理效果。baseFrequencyX属性确定了噪声函数在X方向的粗细程度,从而影响噪声纹理的大小。

值越小,产生的图案越细腻,值越大,产生的图案越粗糙。如果没有设置baseFrequencyY,则baseFrequencyX会默认为其值,并使得生成的噪声是各向同性的。

示例
<svg width="200" height="200">
  <filter id="turbulence">
    <feTurbulence type="fractalNoise" baseFrequency="0.05" numOctaves="6" result="noise">
    </feTurbulence>
    <feColorMatrix type="matrix" values="10 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0" result="colormatrix">
    </feColorMatrix>
    <feComposite operator="in" in="colormatrix" in2="SourceGraphic" result="composite"></feComposite>
  </filter>
  <circle cx="100" cy="100" r="50" fill="green" filter="url(#turbulence)">
  </circle>
</svg>

效果如下所示:

turbulence filter result

可以在标签中设置baseFrequencyX来改变噪声纹理的粗细:

<feTurbulence type="fractalNoise" baseFrequencyX="0.02" baseFrequencyY="0.05" numOctaves="6" result="noise">

效果如下所示:

turbulence filter result

参考