【问题标题】:Is there a way to bulk convert svg files using Android Asset Studio?有没有办法使用 Android Asset Studio 批量转换 svg 文件?
【发布时间】:2025-12-01 09:00:01
【问题描述】:

我有大量的 svg 文件要转换为 Android 的 xml 矢量资源。

记录的过程是,对于每个文件,File->New->Vector Asset。然后选择 svg 文件,点击 Next 然后 Finish。

有没有更快的方法?也许是启动 Asset Studio 的 bash 评论?

【问题讨论】:

标签: android svg android-drawable


【解决方案1】:

Android Studio 3.4 版中添加的资源管理器工具可以批量导入 SVG 并将其转换为矢量绘图。

  1. ToolsResource Manager
  2. 选择Drawable 标签
  3. 点击左上角的+按钮
  4. 选择Import Drawables

您可以在此处一次选择要导入的所有文件。 更多详情here.

【讨论】:

  • 一次可以导入近 100 个矢量图标,这为我节省了很多时间,谢谢!现在应该是公认的答案。
【解决方案2】:

很少有 Git 项目可以帮助您实现将 svg 文件批量转换为 android 支持的 Vector Drawable。

  1. Juraj Novák 的:http://inloop.github.io/svg2android/

  2. SvgToVectorDrawableConverter 原始仓库已被删除。但您可以选择 one of the fork 。示例:svg2vd -i "\*" -o out --fix-fill-type

  3. 单次转化:SVG to Vector Drawable Convertor online

  4. 使用从 Android Studio 移植的wrapper of original converter

希望对你有帮助!

【讨论】:

  • 仅供参考,这里是我使用的确切命令。 ./svg2vd -i "D:\temp\SvgToVectorDrawableConverter_v1.4\climacons\*.svg" --inkscape "D:\\temp\\SvgToVectorDrawableConverter_v1.4\\inkscape\\inkscape.exe" -o out --fix-fill-type
【解决方案3】:

下载this jar file并按照下面的例子使用它

java -jar C:\Users\dan\Downloads\Svg2VectorAndroid-1.0.jar C:\Users\dan\Desktop\svgs_dir

【讨论】:

    【解决方案4】:

    Svg2VectorAndroid.jar 和包含所有Svg 文件的文件夹保存在同一文件夹中,然后打开cmd 并转到放置jar 和源文件夹的文件夹路径,然后执行命令

    java -jar Svg2VectorAndroid.jar <source folder name>
    

    然后按回车键。现在您可以在源文件夹中获取所有 xml 文件,文件夹名称为 ProcessedSVG

    希望对你有帮助。

    【讨论】:

      【解决方案5】:

      使用这个链接,它真的很有帮助: https://svg2vector.com/

      只需上传您的 svg 文件(您可以选择多个文件)并下载所有可绘制文件。只需复制到您的 Drawable 项目文件和中提琴!

      【讨论】:

      • 仅供参考,(也许 b/c 它是免费版本)这个工具不像 Android Studio 工具那样优化和分离路径。我的大部分文件都显示“非常长的矢量路径”性能警告
      最近更新 更多