SVG:在不同的svg中使用多个掩码的问题

时间:2016-11-08 08:47:27

标签: javascript animation svg masking

我使用svg过滤器和蒙版遇到了一个奇怪的问题。

假设我有一个包含这些过滤器和掩码的svg文件:

<filter id="om-outline">
<feMorphology result="offset" in="SourceGraphic" operator="dilate" radius="3"/>
<feComposite in="offset" in2="SourceGraphic" operator="out" result="stroke" />
<feFlood flood-color="#79868d" result="COLOR-red-2" />
<feComposite in="COLOR-red-2" in2="stroke" operator="in" result="BEVEL_41" />
</filter>

<mask id="outline-mask">
<rect cx="0" cy="0" width="341" height="375" fill="black"/>
<!-- some more elements here that create the silhouette of my actual svg graphic -->
</mask>

使用此过滤器和蒙版,在我的动画svg图形周围创建一个漂亮的轮廓 enter image description here

到目前为止,一切都按预期工作,但是当我添加另一个图形时,使用相同的技术创建轮廓,会发生这种情况:

enter image description here

不知何故,第二个图形使用第一个图形的蒙版和轮廓,即使我使用不同的ID作为参考。

这只发生在Firefox和Internet Explorer中,Safari和Chrome似乎按预期工作。

0 个答案:

没有答案