我想要一个带有白色外发光的黑色文本,以便在彩色地图上可读。这是我以前做的:
<defs>
<filter id="label-glow">
<feGaussianBlur stdDeviation="1" />
</filter>
</defs>
<text stroke="white" stroke-width="5" filter="url(#label-glow)">Harald's Repose</text>
<text>Harald's Repose</text>
我想避免重复文本元素,所以我决定使用 feFlood 创建一个白色矩形,使用 feComposite 创建文本的白色副本,使用 feGaussianBlur 创建模糊,然后使用另一个 feComposite 在顶部添加原始文本这一切。不幸的是,由此产生的外部辉光非常微弱。我发现重复几次 feComposite 会有所帮助。我确信有更好的解决方案。我究竟做错了什么?
<defs>
<filter id="label-glow">
<feFlood flood-color="white"/>
<feComposite in2="SourceGraphic" operator="in"/>
<feGaussianBlur stdDeviation="2"/>
<feComposite operator="over"/>
<feComposite operator="over"/>
<feComposite operator="over"/>
<feComposite operator="over"/>
<feComposite in="SourceGraphic"/>
</filter>
</defs>
<text filter="url(#label-glow)">Harald's Repose</text>