【发布时间】:2017-11-18 23:39:52
【问题描述】:
我想知道使用可绘制矢量形状(XML 文件)与图像资源(png 文件)作为图标(Material Design Icons)的优缺点?
【问题讨论】:
标签: android image android-drawable vector-graphics
我想知道使用可绘制矢量形状(XML 文件)与图像资源(png 文件)作为图标(Material Design Icons)的优缺点?
【问题讨论】:
标签: android image android-drawable vector-graphics
正如我所见,这个问题是指光栅(例如 jpeg、png)和矢量(例如 eps 图像)之间的一般替代方案。一句话,向量可以很容易地缩放,需要更少的内存,但更复杂。详细信息,请参见例如here。
【讨论】:
区别在于描述他们想要绘制的内容的矢量图像和描述每个像素颜色的光栅图像,因此它们的尺寸更大。
矢量图像可以完美地调整大小,而在光栅图像上尝试它总是一个坏主意,这会使这些图像失去质量。
此外,当有许多元素时,矢量图的渲染速度比光栅图像慢,这是由于解析路径和图形并绘制它们所必需的计算(实际上,它也更占用 CPU 资源)。相反,如果只有很少的元素并且路径很少有点,它会更快。尽管矢量图像加载起来更轻(在 RAM 中,实际上它们无法加载到 GPU 内存中,这与光栅图像不同),这使得它们最快。
重要的是,不要超过 SVG 和其他矢量图像中的元素数量。否则,它们最终会变慢。
【讨论】:
这取决于您需要使用哪一个。您可以随心所欲地使用 xml 代码更改向量属性。但是图像资源控制其属性和使用更多内存的灵活性较小
【讨论】: