【问题标题】:How to create Android VectorDrawables from Illustrator (or similar tool)?如何从 Illustrator(或类似工具)创建 Android VectorDrawables?
【发布时间】:2015-03-03 07:50:15
【问题描述】:

如果我在 Illustrator 之类的程序中有矢量图像,我怎样才能得到正确的格式供 Android 的 VectorDrawable 框架使用?

我找到了将 SVG 转换为 VectorDrawable xml 格式的工具:http://inloop.github.io/svg2android/ 但它要求 SVG 只使用“路径”。

任何想法如何输出这样的文件?

【问题讨论】:

  • 使用处理 REAL SVG 文件的库,例如 android-svg、svg-android 或您喜欢的任何文件。

标签: android svg android-vectordrawable


【解决方案1】:

只需使用SVG to VectorDrawable Converter 或其online version。这是 SVG 图像到 Android VectorDrawable XML 资源文件的批量转换器。

指向自述文件的链接,其中提供了有关如何使用转换器的足够信息。

【讨论】:

  • 我和另一位开发人员都无法让该工具正常工作并提供良好的输出,抱歉。不过,我使用“svg2android”工具取得了巨大的成功 - inloop.github.io/svg2android
【解决方案2】:

如果您使用的是 Android Studio,最好的方法是:

  • 右键单击“可绘制”文件夹 > 新建 > 矢量资源
  • 单击“本地 SVG 文件”以导入您自己的 SVG 文件,或单击“材料图标”以使用提供的图标。
  • 将资源名称更改为您需要的任何名称。
  • 单击下一步并选择您的目标模块和 res 目录。
  • 点击完成。

向导从您的 SVG 文件生成 XML。

【讨论】:

  • Vector Asset Studio 在 2015 年 9 月的 v1.4.0 版本中添加到 Android Studio。所有其他答案均在此更新之前。
  • 是否可以从终端、makefile、gradle 等调用它?我想只存储 svg(因为我也需要它用于 ios 项目)并在构建时生成可绘制的矢量。
  • 您可能需要为尺寸选择“覆盖”复选框。
【解决方案3】:

该工具目前似乎只支持<path> 元素。例如,它不支持<rect><circle> 等。

如果您在绘图中使用这样的图元,则需要转换它们。我忘记了您需要使用的确切选项,但它可能类似于“转换为路径”。

此链接可能会有所帮助。

https://graphicdesign.stackexchange.com/questions/15475/convert-primitive-to-path-using-svg-format-in-illustrator

【讨论】:

  • 重要提示 - 我们在 SVG 中已经是“路径”元素的东西在 Android 中看起来不正确,我们遇到了问题,我们通过执行该链接所说的(和 @dom 所说)解决了这个问题即使在 AI 已经导出到 SVG 路径元素的项目上。因此,总而言之,在导出到 SVG 之前对所有对象执行此操作,然后使用 svg2android。
【解决方案4】:

将所有内容转换为路径

在将您的 AI 项目文件保存为 SVG 之前,请确保:

  1. 使用Object > Expand...将所有路径转换为轮廓。

  2. 在选择对象的同时右键单击并选择Make Compound Path,将任何形状路径(例如<circle>)转换为Compound Paths

完成后,SVG 中的每个形状都应该是<path>


优化 SVG

当我尝试使用问题中提到的应用程序将中等复杂度的 SVG 转换为可绘制的矢量时,我遇到了忘记某些部分的问题。我认为它一定与它的格式化方式有关,所以我决定使用SVGOMG,一个 SVG 优化应用程序,将其精简到最基本的部分。

使用 SVGOMG 或其他应用程序优化 SVG,然后下载文件。


将优化后的 SVG 转换为 Vector Drawable

将下载的 SVG 放入 SVG2Android,它会为您提供所需的内容。

【讨论】:

    猜你喜欢
    • 2010-10-11
    • 2010-09-11
    • 2019-04-06
    • 2011-06-17
    • 1970-01-01
    • 2018-04-01
    • 2019-03-16
    • 2017-03-25
    • 2016-10-30
    相关资源
    最近更新 更多