将 SVG 矢量转换为 Android 多密度 png 绘图

Convert SVG vector to Android multi-density png drawables

我有一些 SVG 格式的图标,想将它们转换为 Android png 可绘制对象,尺寸如下:drawable-mdpidrawable-hdpidrawable-xhdpidrawable-xxhdpidrawable-xxxhdpi.

将 SVG 转换为可绘制的 png 的最简单方法是什么?

问题可能有点过时,但我在网上搜索并没有找到任何好的解决方案。所以我写了一个简单的 bash 脚本来转换 SVG 和光栅图像格式。

这是: https://gist.github.com/tntclaus/18f4fe7e8540f1cb283d2c7d8ad21d69

用法:

./generateAndroidDrawables.sh <image.file> <dp>

它至少需要 ImageMagic,在 OS X 上可以通过 brewmacports 安装。不幸的是,ImageMagic 转换 SVG 的效果很差,所以我添加了对 Inkscape 的支持。如果未安装 Inkscape,脚本将退回到 ImageMagic 转换。

为时已晚,但我发现 Github Java project, named SVG to PNG Converter, 将 SVG 文件转换为 Android 兼容的 png 可绘制对象非常快速且容易。

有一个在线 tool 我工作过,可以将 svg 图像转换为不同的平台,包括 android。

默认情况下,它会将其转换为 Android 可绘制对象,因此您需要将 Android 设置从自动更改为 png,它将创建您需要的所有密度。

请注意,mdpi 分辨率将与 svg 具有相同的大小。所以您可能需要更改 width/height 参数以放大输出。或者您可以免费试用该服务,您可以指定 mdpi 版本的输出分辨率。

我最近看到了这个,我看到了答案,但它们很难。

本在线tool too much easier https://appicon.co/

您可以将任何图像转换为 android 多密度或 IOS