【问题标题】:How do I convert pngs directly to android vector drawables?如何将 pngs 直接转换为 android vector drawables?
【发布时间】:2019-03-11 06:36:27
【问题描述】:

是否有在线工具可以将 png 文件转换为矢量可绘制文件(Android 中的 xml)?

我在我的应用程序中用于图标和各个位置的 png 很少。 所以,现在我想将它们转换为 xmls。有可能吗?

【问题讨论】:

  • 你没有。这不是Android处理png的方式。 XML 可绘制文件是您编写的自定义可绘制文件,例如形状、颜色等,更像是自定义视图。您需要使用 PNG 生成资产。使用这个 -> romannurik.github.io/AndroidAssetStudio。如果您详细说明您的查询,那就太好了。
  • 我已经编辑了我的查询。此外,我无法使用上面的链接将我的 png 转换为可绘制的矢量。 github.com/project-travel-mate/Travel-Mate/blob/master/Android/…
  • 试试我在下面提供的解决方案。希望它有所帮助
  • 除了非常非常少的例外,这并没有真正的意义。原因与 Android 无关,而与图形格式的工作方式有关。将光栅图形格式转换为矢量格式根本没有意义。它将产生一个输出,但该输出将没有矢量图形的任何好处。它不能像 real 矢量图形那样缩放,但绘制起来同样昂贵。这没有意义。

标签: android png android-vectordrawable


【解决方案1】:

好的,您可以按照以下步骤将 PNG 转换为 Android 矢量绘图

  • 第 1 步: 将 PNG 转换为 SVG(可缩放矢量图形)

https://www.autotracer.org/

或者您可以使用您选择的任何在线转换器

http://a-student.github.io/SvgToVectorDrawableConverter.Web/

或者,您也可以使用 Android Studio 从步骤 1 中生成的 SVG 生成矢量可绘制对象。

  • 在 Android Studio 中,右键单击您的可绘制文件夹 新 > 矢量资源

这将打开 Android studio Vector 资产生成器。 选择一个本地 SVG 文件(你在线生成的那个)

你也可以参考这篇文章 https://stackoverflow.com/a/35402459/6142219

【讨论】:

  • 这个 png 到 svg 的转换是迄今为止最好的,已经尝试了很多不同的选项,而这个完全不同!很高兴找到这个答案!
  • @ggrana 也许你可以帮我...我正在尝试使用autotracer.orginloop.github.io/svg2androidibb.co/SdZjjTH 转换为xml。它可以工作,但是当我尝试在我的应用程序中使用它时,应用程序崩溃了。你能检查它是否适合你吗?谢谢!
猜你喜欢
  • 1970-01-01
  • 2012-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多