SVGKit的性能,应该优先于PNG吗?

时间:2016-05-05 20:16:08

标签: ios swift svg vector svgkit

我一直在关注SVGKit,我发现了相互矛盾的想法。有人说它比PNG慢,有些人说它很快。

我希望得到一个建议,我应该采取哪种方式。当我将矢量图形导出到PNG进行显示时,使用SVG会没有意义吗?

当然,这给了它仍然是矢量的附加价值。

或者仍然建议将所有内容导出到PNG?

2 个答案:

答案 0 :(得分:2)

您可能会考虑在Xcode 7中引入的中间路径。在这里,您将资源作为矢量图像(PDF)添加到项目中,在构建时,Xcode会自动生成所有需要大小的PNG(1x,2x,3x)

就个人而言,我只在必要时使用SVG,就像我需要能够改变(部分)图像的颜色一样。我相信在运行时调整矢量图像大小时会有性能损失,虽然Android使用向量作为默认值,因此它可能无关紧要。

答案 1 :(得分:1)

SVG是资源最密集的,如果您需要显示可以放大和缩小的内容,可以使用,而PNG应该是大多数UI图形(徽标,图标等)的首选,因为它很清晰但仍然轻巧并且快速显示,因此无法在性能方面将SVG与PNG进行比较。 如果您正在使用Crystal clear图像,则可以使用基于pdf的图形,Xcode使用Vector Images in Xcode

支持这些图形

如果您仍然需要实现SVGKit,我总是建议使用一些工具(如SVGCleaner)来清理和简化SVG,以提高性能。