In Android 4.0+ können wir problemlos auf das Vektorformat von Bildern umschalten, anstatt auf unterschiedliche Bildschirmdichten zu schneiden. Teil 2 von 2



    Im vorherigen Teil haben wir die BetterVectorDrawable-Bibliothek besprochen , die VectorDrawable für Android 4.0 und höher implementiert .
    In diesem Teil werden wir über das Konvertieren von Bildern von SVG in vektorzeichenfähiges XML sprechen.

    Wenn Android XML-Ressourcen liest, werden Attribute ignoriert, die vom aktuellen Gerät nicht unterstützt werden. Dies bedeutet, dass nicht unterstützte Attribute in vektorzeichenfähigem XML im Namespace dupliziert werden müssen, schemas.android.com/apk/res-autodamit BetterVectorDrawable sie lesen kann. Zum Beispiel:


    In diesem Fall müssen nur nicht unterstützte Attribute dupliziert werden (die Liste kann hier angezeigt werden ; siehe Attribute ohne Präfix android:).
    Glücklicherweise erledigt der Konverter das alles für uns und wir müssen nicht einmal darüber nachdenken.

    SVG zu VectorDrawable Converter


    Mit diesem Konverter können Sie vektorbezogene Ressourcen sowohl für Android 5.0+ als auch für die BetterVectorDrawable-Bibliothek erstellen. Dies wird über das Befehlszeilenargument gesteuert.

    Der Konverter ist eine plattformübergreifende Konsolenanwendung: Er kann unter Windows oder OS X ausgeführt werden. Für den Betrieb müssen Sie die Abhängigkeiten installieren. Dies wird später erläutert. Der Konverter selbst wird als Archiv mit einer ausführbaren Datei verteilt, die hier heruntergeladen werden kann .

    Das Archiv muss entpackt werden. Öffnen Sie die Konsole unter Windows (Terminal unter OS X) und ändern Sie das aktuelle Verzeichnis in das Verzeichnis mit dem Konverter.
    Der Befehl, der die Konvertierung startet, sieht folgendermaßen aus:

    [mono] svg2vd.exe -i in_dir/\* -o out_dir [--lib BetterVectorDrawable]
    

    Optionale Parameter sind in eckigen Klammern angegeben (obwohl sie ohne Klammern verwendet werden):
    • mono sollte angegeben werden, wenn Sie den Konverter unter OS X ausführen
    • --lib BetterVectorDrawablesollte angegeben werden, wenn nicht unterstützte Attribute in der Ausgabe-XML dupliziert werden sollen, d. h. Konvertieren Sie SVG in vektorbezogenes XML für die BetterVectorDrawable-Bibliothek. Andernfalls erstellt der Konverter vektorbezogene Ressourcen für Android 5.0 und höher.

    Die übrigen Parameter sind meines Erachtens klar und so; Argument --helpzeigt ihre Beschreibungen.

    Installation von Abhängigkeiten


    Wenn Sie Fenster haben


    Microsoft .NET Framework


    Wenn Sie Windows 8 oder höher haben, können Sie diesen Eintrag überspringen.
    Auf dem System muss .NET Framework 4.5+ installiert sein. Sie können die Version des installierten .NET Framework anhand dieser Anweisung überprüfen . Laden Sie das .NET Framework 4.5 hier herunter .

    Inkscape


    Inkscape ist ein kostenloser Open Source-Editor für Vektorgrafiken. Die Installation unter Windows unterscheidet sich nicht von der üblichen Installation des Programms. Sie können es hier herunterladen .

    Wenn Sie OS X haben


    Benötigen Sie OS X 10.7 oder besser.

    Mono


    Sie können Mono hier herunterladen . Installation ging ich ohne Schwierigkeiten.

    Inkscape


    Inkscape ist ein kostenloser Open Source-Editor für Vektorgrafiken. Um unter OS X zu installieren, müssen Sie zuerst XQuartz installieren. Anschließend müssen Sie den Computer neu starten oder beenden und sich erneut anmelden.
    Sie können Inkscape hier herunterladen . Stellen Sie sicher, dass Inkscape nach der Installation frei startet. Ich musste es in den Systemeinstellungen entsperren ...Sicherheit & DatenschutzAllgemein . Sie müssen auf Klicken Sie auf das Schloss, um Änderungen vorzunehmen und den Start von Inkscape zu entsperren.

    Wenn Sie irgendwelche Schwierigkeiten haben, können Sie mir schreiben. Es ist besser, Entwickler auf GitHub über Probleme mit dem Konverter zu informieren, indem Sie einen Link zur problematischen SVG-Datei hinzufügen.

    Vielen Dank für Ihre Aufmerksamkeit.

    Update 10.09.2015: Eine Online-Version des Konverters ist erschienen .

    Jetzt auch beliebt: