我在使用img
标记嵌入的SVG文件中使用投影滤镜。在我的MacBook上,它在Safari中看起来很好。然而,在移动Safari中,图形变得非常像素化并且失去了它的锐度。当未应用过滤器时,SVG呈现正常。除了传递过滤器之外,还有什么方法可以解决这个问题吗?
答案 0 :(得分:1)
您应该尝试将过滤器的"filterRes"属性明确设置为与视网膜显示匹配的值。
答案 1 :(得分:0)
这个问题在2018年仍然很重要,我已经找到了解决方案。您可以复制要为其提供过滤器的元素,将其放置在实际元素的下方,并仅在其上保留过滤器,而在该元素上不使用任何过滤器。这样,Safari和其他浏览器将在调整大小时仅使用阴影将元素栅格化,但是将被看起来清晰的矢量元素隐藏。您可以查看示例并阅读更多here。
答案 2 :(得分:0)
不幸的是,我尝试了所有建议的解决方法,但都没有成功,唯一对我有用的是将svg内联,而不是作为img标签。
令人惊讶的是,这个问题似乎已经存在了很长时间!
答案 3 :(得分:0)
现在是 2021 年,它仍然具有相关性。我找到了一个对我有用的解决方法:您可以放大 svg,然后使用 css-transform 将其缩小:
.section_logo img {
height: 500%;
transform-origin: top left;
transform: scale(0.2);
}