SVG zu Android Shape [geschlossen]


70

Ich frage mich, wie das Zeichnen von Vektoren in Android mit der ShapeKlasse einem anderen Standard für das Zeichnen von Vektoren ähneln kann.

Da Shapees sich um a Drawablehandelt und Drawables normalerweise als XML definiert sind, klingt es sehr nach den Befehlen zum Zeichnen von Vektoren in SVG.

Meine Frage lautet: Hat jemand eine XSLT-Transformation oder einen anderen Mechanismus zum Konvertieren einer SVG-Zeichnungsbeschreibung in Android-Formen erstellt?


Ich suche auch so etwas und bin ziemlich verwirrt, warum dieser Jet nicht implementiert ist. Wie Sie bereits erwähnt haben, würde eine einfache Transformation von Zeichenbefehlen ausreichen (zumindest für eine Teilmenge von SVG). Ich habe dies manchmal sogar manuell für sehr einfache Formen gemacht (das Definieren von Schaltflächenhintergründen mit einem solchen Verlauf ist großartig) und ich bin mehr oder weniger ahnungslos in Bezug auf SVG-Besonderheiten.
Igor Čordaš

4
Gute Frage, falscher Anruf, um es zu schließen. Ich denke, es ist eine fantastische Idee, einen Konverter von SVG zu Shape zu haben. Ich schreibe vielleicht eine, aber ich hasse XSLT, also würde ich es wahrscheinlich mit C # machen oder ich denke, es sollte Java sein.
Martin Capodici

2
Ich würde vorschlagen, dass Sie VectorDrawable verwenden. Die beste Lösung, die ich gefunden habe, ist die BetterVectorDrawable-Bibliothek zusammen mit dem SVG to VectorDrawable-Konverter. BetterVectorDrawable ist die VectorDrawable-Implementierung für Android 4.0+ mit konfigurierbarem Fallback-Verhalten unter Android 5.0+. SVG to VectorDrawable Converter ist der Stapelkonverter von SVG-Bildern in Android VectorDrawable XML-Ressourcendateien. Online-Version: a-student.github.io/SvgToVectorDrawableConverter.Web
A-Student

Antworten:



11

Nun, nicht genau. Aber ich habe libsvg auf Android portiert, wodurch Sie SVG-Dateien laden und auf einem Canvas zeichnen können.

Bitte checken sie aus:

https://launchpad.net/libsvg-android


Auf der Website heißt es, dass Sie mit Basar herunterladen müssen, ganz einfach!
Anton P

5
Wenn es nur nicht GPL wäre! Nur gut für freie Software, nur damit Sie wissen
Paul Gregoire

@AntonP hat gerade versucht, Sie mit einem mit inkscape erstellten Bild zu belasten, ungefähr 300 KB. Das kann nicht

6

Das nächste, was ich finden konnte, war svg4mobile .

Ich glaube zwar nicht, dass es Transformationen in Drawables XML durchführt, aber es liest das SVG und ruft die Drawable-Klassen entsprechend auf.


2

Neben den 2 genannten GPL-Bibliotheken gibt es eine kommerzielle Bibliothek namens TinyLine , die die SVG Tiny-Teilmenge implementiert . Dies ist zwar eingeschränkter, kann aber eine bessere Lizenzierungsoption sein, wenn Sie eine Anwendung ohne GPL erstellen möchten.



2

Die großartige AndEngine verfügt über eine Erweiterung zum Laden von SVG und zum Rastern in die Textur mit beliebiger Auflösung, mit Farbsatz und anderen großartigen Funktionen. Funktioniert wirklich. Zum Beispiel können Sie ein kostenloses Spiel des Engine-Autors ausprobieren .

Hinweis: Die Engine eignet sich am besten für 2D-Vollbildspiele und basiert auf der OpenGL 2-Ansicht. LGPL


"The great AndEngine ..." sagen Sie besser "The great buggy AndEngine ..."
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.