安卓矢量图规范是什么?

3

我正在尝试用VectorDrawables替换所有的Android可绘制的PNG资产。

当我使用Android Studio标准资产时,一切都很正常。

但一些外部导入的SVG资产会失败,因为Android不支持行业标准的SVG规范。

是否存在Android矢量图形规范? 其中列出了Android(Android Studio)将接受的所有可接受的SVG命令?

1个回答

1
据我所知,除了文档中的VectorDrawable类定义之外,目前没有正式的矢量图形格式书面规范。

https://developer.android.com/reference/android/graphics/drawable/VectorDrawable

此页面还包含相当多的额外信息:

https://developer.android.com/studio/write/vector-asset-studio

这两个工具都没有列出导入器支持的SVG元素列表。但是,您可以查看Android源代码中导入器的代码,以获得有关支持的内容的明确答案。源代码在这里:SVG2Vector.java 从代码中可以看出,支持的SVG元素仅限于:

<polygon>, <rect>, <circle>, <line>, <path>, <g>

请注意,这些仅部分受支持,因为仅处理其有限的一组属性。基本上只有与strokefill相关的属性,加上transformdisplay:none
然而,还有其他第三方转换器可用,声称能够做得更好。尽管它们可能支持的内容受到VectorDrawable本身支持的限制。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接