SVG to Android Shape [closed]

2019-01-10 03:20发布

问题:

I'm wondering how vector drawing in Android with the Shape class may resemble another vector drawing standard.

Since Shape is a Drawable, and Drawables are usually defined as XML, it sounds a lot like the vector drawing commands in SVG.

My question is this: Has anybody created an XSLT transformation, or other mechanism, for converting an SVG drawing description into Android Shapes?

回答1:

Another non-GPL'd library (this one is Apache License 2.0), the one used in Google's Androidify app: svg-android

https://github.com/pents90/svg-android



回答2:

Well, not exactly. But I do have ported libsvg to android, which enables you to load SVG files and plot them to a Canvas.

Please check out:

https://launchpad.net/libsvg-android



回答3:

The closest thing that I could find was svg4mobile.

While I don't believe that it does transformations to Drawables XML, it does read the svg and make the appropriate calls to the Drawable classes.



回答4:

Besides the 2 GPL libraries mentioned, there is a commercial library called TinyLine that implements the SVG Tiny subset, which although more limited may be a better licensing choice, if you want to create a non-GPL'd application.



回答5:

Currently some people including me work on it independently.
You may find working solution in these articles:
  Android. ImageView with SVG Support.
  Android ImageView and Drawable with SVG support



回答6:

The great AndEngine has an extension for loading SVG and rasterizing it into the texture with any resolution, with color replacement and other great features. Really works. For example you can try a free game by engine author.

Note: The engine best suited for full-screen 2D games and is based on OpenGL 2 view. LGPL