📅  最后修改于: 2023-12-03 15:35:12.075000             🧑  作者: Mango
SVG
SVG
<filter ...>
<feSpotLight x="number" y="number" z="number" pointsAtX="number" pointsAtY="number" pointsAtZ="number"
specularExponent="number" limitingConeAngle="number" />
</filter>
其中,<filter>
元素用于定义一个SVG过滤器,<feSpotLight>
元素是
x, y, z
属性用于定义光源的位置,即聚光灯投射的方向。pointsAtX, pointsAtY, pointsAtZ
属性用于定义聚光灯照射的目标点方向。specularExponent
属性控制聚光灯中心的亮度,limitingConeAngle
属性用于控制聚光灯的扩散角度和硬阴影的边缘。
下面是一个简单的例子:
<svg width="400" height="400">
<defs>
<filter id="spotlight" x="-50%" y="-50%" width="200%" height="200%">
<feSpotLight x="50%" y="50%" z="50" pointsAtX="50" pointsAtY="50" pointsAtZ="0"
specularExponent="20" limitingConeAngle="30" />
</filter>
</defs>
<rect x="50" y="50" width="200" height="200" fill="red" filter="url(#spotlight)" />
</svg>
这个例子中,我们定义了一个聚光灯过滤器<filter id="spotlight">
,并将其应用到一个红色矩形上。聚光灯的位置是(50%,50%)
,照射目标点在(50,50)
,硬阴影的边缘角度为30
度。
SVG