【发布时间】:2011-10-03 19:07:21
【问题描述】:
我正在阅读和观看 UI 教程。他们都谈到了您需要了解不同设备尺寸和分辨率的事实。因此将您的图标导出为多种尺寸以支持不同的屏幕密度。 SVG 是一个开放标准 (W3C),应该用于解决此类问题。那么我可以在本地使用 SVG 文件作为我的图标的可绘制对象吗?
注意:我不是在谈论浏览器支持。
【问题讨论】:
标签: android graphics resources android-layout svg
我正在阅读和观看 UI 教程。他们都谈到了您需要了解不同设备尺寸和分辨率的事实。因此将您的图标导出为多种尺寸以支持不同的屏幕密度。 SVG 是一个开放标准 (W3C),应该用于解决此类问题。那么我可以在本地使用 SVG 文件作为我的图标的可绘制对象吗?
注意:我不是在谈论浏览器支持。
【问题讨论】:
标签: android graphics resources android-layout svg
Android 不支持 SVG 光栅化。查看libsvg-android 或svg4mobile。它解决了这个问题。
【讨论】:
答案变了。从版本 21 开始,Lollipop 操作系统已经支持 VectorDrawable。这是由一个支持库添加的,它允许您将 VectorDrawable 很好地使用回以前的版本。其中包括支持导入大部分重要的 SVG 矢量命令并让 Android Studio 自动将它们转换为 VectorDrawable。
对所有版本都使用矢量图像资源。 -- 即使在旧版本中,也完全可以使用字体。基本上你给它一个字体资源,然后加载字体的特定字母作为图标。由于字体是字形和矢量字形,因此您可以在很远的地方获得矢量图标。
【讨论】: