来自Inkscape的图片不能与svg-android库一起使用

时间:2012-01-09 18:46:16

标签: android svg

在Android程序中使用Inkscape创建的svg文件似乎存在问题。有时它可以工作,有时不工作(即使是像矩形这样的简单对象)。我使用了本教程:http://code.google.com/p/svg-android/wiki/Tutorial(来自onCreate的行)。我也用谷歌搜索,这个问题没有简单的答案。也许你对它有更多了解?我应该使用其他编辑器或库吗? 库使用此文件:http://code.google.com/p/svg-android/downloads/detail?name=android.svg(来自tut)。 类似的问题: Exists a svg library that works fine for android?

BTW:我想在游戏中使用svg图形。这样做的最佳方式是什么?

2 个答案:

答案 0 :(得分:2)

svg-android教程陈述

  

此库支持SVG Basic 1.1规范的子集。通常,您可以在Illustrator中加载矢量图稿,然后将其另存为SVG文件(在询问时选择SVG Basic 1.1选项),它将正常工作。 Inkscape没有对SVG Basic的直接支持,但是当从Inkscape保存为SVG时,许多绘图才会起作用。

我猜想inkscape是你的问题。即使它说来自inkscape的许多文件都能正常工作,但看起来像你的inkscape会导致它崩溃。

如果我是你的第一件事我会尝试将它们从插画家而不是inkscape中保存(我想你可以在插画家上免费获得30天)。

获得svg支持可能会更容易支持不同的分辨率。但是,如果麻烦太多,那么在几个不同的分辨率下保存图形的png副本并在ldpi,mdpi,hdpi文件夹中使用它们可能是值得的。

答案 1 :(得分:1)

我使用Inkscape将png文件转换为svg。但是,当我将Inkscape创建的svg文件放在Vector Asset Studio中时,我得到了一条错误消息:

Empty preview image!
EXCEPTION in parsing fuego_test1.svg:
For input string: "297mm"Exception while parsing XML file:
Premature end of file.

在这种情况下,使用文本编辑器编辑svg文件中的以下两行:

height="297mm"
width="210mm">

删除“mm”

height="297"
width="210">

在此之后,Vector Asset Studio会识别该文件而不会出现任何错误