Android 矢量与图像源(优缺点)?

Android 矢量与图像源(优缺点)?,android,image,android-drawable,vector-graphics,Android,Image,Android Drawable,Vector Graphics,我想知道在图标(材料设计图标)中使用可绘制矢量形状(XML文件)和图像资源(png文件)的优缺点是什么?正如我所看到的,问题涉及光栅(例如jpeg、png)和矢量(例如eps图像)之间的一般替代方案。在一句话中,向量可以很容易地缩放,所需的内存更少,但更复杂。有关详细信息,请参见例如 这取决于您需要使用哪一种。您可以在任何地方使用xml代码更改向量属性。但是图像资源在控制属性和使用更多内存方面的灵活性较低不同之处在于描述他们想要绘制的内容的矢量图像和描述每个像素颜色的光栅图像,由于它们的尺寸较大

我想知道在图标(材料设计图标)中使用可绘制矢量形状(XML文件)和图像资源(png文件)的优缺点是什么?

正如我所看到的,问题涉及光栅(例如jpeg、png)和矢量(例如eps图像)之间的一般替代方案。在一句话中,向量可以很容易地缩放,所需的内存更少,但更复杂。有关详细信息,请参见例如

这取决于您需要使用哪一种。您可以在任何地方使用xml代码更改向量属性。但是图像资源在控制属性和使用更多内存方面的灵活性较低

不同之处在于描述他们想要绘制的内容的矢量图像和描述每个像素颜色的光栅图像,由于它们的尺寸较大。 矢量图像可以完美地调整大小,而尝试在光栅图像上调整大小总是一个坏主意,这会使这些图像失去质量。 此外,当有许多元素时,矢量图像的渲染速度比光栅图像慢,这是因为解析路径和图形并绘制它们所需的计算(事实上,它也需要更多的CPU)。相反,如果只有很少的元素和路径有很少的点,则速度更快。虽然矢量图像的加载重量较轻(在RAM中,实际上它们无法加载到GPU内存中,这与光栅图像不同),这使它们的加载速度最快。
重要的是,不要超过SVG和其他矢量图像中的元素数量。否则,他们最终会变得更慢