如何从Illustrator(或类似的工具)创buildAndroid VectorDrawables?
如果我在像Illustrator这样的程序中使用vector图像,那么我怎样才能使用Android的VectorDrawable框架使用正确的格式呢?
我find了一个工具来将SVG转换为VectorDrawable xml格式: http ://inloop.github.io/svg2android/,但它只需要使用“path”的SVG。
任何想法如何输出这样的文件?
该工具目前只支持<path>
元素。 所以例如它不支持<rect>
, <circle>
等
如果您在绘图中使用这样的图元,则需要将其转换。 我忘了你需要使用的确切选项,但它可能类似于“转换为path”。
这个链接可能有帮助。
如果您使用Android Studio,最好的方法是:
- 右键单击您的“绘图”文件夹>新build>vector资产
- 点击“本地SVG文件”导入你自己的SVG文件,或者“材质图标”来使用提供的图标。
- 将资源名称更改为任何您需要的名称。
- 单击下一步并select您的目标模块和res目录。
- 点击完成。
该向导从您的SVG文件生成XML。
只需使用SVG到VectorDrawable转换器或其在线版本 。 这是将SVG图像批量转换为Android VectorDrawable XML资源文件的转换器。
链接指向自述文件,它提供了有关如何使用转换器的足够信息。
把一切都转换成path
在将AI项目文件保存为SVG
,请确保:
-
使用
Object > Expand...
将所有path转换为轮廓。 -
在选中对象的情况下右键单击,将任何形状path(如
<circle>
)转换为Compound Paths
,然后selectMake Compound Path
。
一旦完成,SVG中的每个形状都应该是<path>
。
优化SVG
当我尝试使用问题中提到的应用程序将中等复杂度的SVG转换为可绘制的vector时,我忘记了一些部分。 我认为它必须与格式化的方式有关,所以我决定使用SVGOMG ,一个SVG优化应用程序, 去除它的基本要素。
使用SVGOMG或其他应用程序来优化SVG,然后下载文件。
将优化的SVG转换为vector绘图
把下载的SVG放到SVG2Android中 ,它会给你以后的东西。
如果你在macOS上,试试Svgsus。 http://www.svgs.us/
适用于转换不同规格的svgs,包括向量可绘制。