web-dev-qa-db-fra.com

SVG à Android Shape

Je me demande comment le dessin vectoriel dans Android avec la classe Shape peut ressembler à une autre norme de dessin vectoriel.

Puisque Shape est un Drawable, et que Drawables sont généralement définis comme XML, cela ressemble beaucoup aux commandes de dessin vectoriel en SVG.

Ma question est la suivante: quelqu'un a-t-il créé une transformation XSLT, ou un autre mécanisme, pour convertir une description de dessin SVG en Android Shapes?

70
Buggieboy

La chose la plus proche que j'ai pu trouver était svg4mobile .

Bien que je ne pense pas qu'il effectue des transformations en XML Drawables, il lit le svg et effectue les appels appropriés aux classes Drawable.

6
Buggieboy

Une autre bibliothèque non GPL (celle-ci est Apache License 2.0), celle utilisée dans l'application Androidify de Google: svg-Android

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

26
dgmltn

Enfin, pas exactement. Mais j'ai porté libsvg sur Android, ce qui vous permet de charger des fichiers SVG et de les tracer sur un canevas.

Veuillez vérifier s'il vous plait:

https://launchpad.net/libsvg-Android

11
Anton P

Actuellement, certaines personnes, dont moi, y travaillent indépendamment.
Vous pouvez trouver une solution de travail dans ces articles:
Android. ImageView avec prise en charge SVG.
Android ImageView et Drawable avec prise en charge SVG

2
Pavel Chernov

Outre les 2 bibliothèques GPL mentionnées, il existe une bibliothèque commerciale appelée TinyLine qui implémente le sous-ensemble SVG Tiny, qui, bien que plus limité, peut être un meilleur choix de licence, si vous souhaitez créer un non GPL application.

2
Mark

Le grand AndEngine a une extension pour charger SVG et le rasteriser dans la texture avec n'importe quelle résolution, avec remplacement de couleur et d'autres grandes fonctionnalités. Fonctionne vraiment. Par exemple, vous pouvez essayer n jeu gratuit par l'auteur du moteur.

Remarque: Le moteur le mieux adapté aux jeux 2D plein écran et basé sur la vue OpenGL 2. LGPL

2
Alexey Gopachenko