104 votes

Convertir VectorDrawable en SVG

J'ai effectué les conversions opposées (SVG vers VectorDrawable ) manuellement ou à l'aide d'outils Web.

Mais j'ai du mal à faire le contraire. J'ai VectorDrawable mais je ne sais pas comment le convertir en SVG et je ne trouve aucun outil en ligne pour le faire.

Est-ce que quelqu'un a de l'expérience avec cela et quelles sont les étapes ou les outils pour le faire?

201voto

Kuti Gbolahan Points 988

Les étapes que je suis:

android:pathData remplacé par d

android:fillColor remplacé par fill

Un chemin dans VectorDrawable sans fillColor est fill="none" en SVG.

android:viewportHeight="24" android:viewportWidth="24" est viewBox="0 0 24 24" en SVG.

Exemple

Vecteur Drawable

 <?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportHeight="24"
    android:viewportWidth="24">

    <path
        android:fillColor="#ffffff"
        android:pathData="M12,3L2,12h3v8h2.5v-0.8c0-1.5,3-2.2,4.5-2.2s4.5,0.8,4.5,2.2V20H19v-8h3L12,3zM12,15.2c1.2,0-2.2-1-2.2-2.2 s1-2.2,2.2-2.2s2.2,1,2.2,2.2S13.2,15.2,12,15.2z" />
    <path android:pathData="M0,0h24v24H0V0z" />
</vector>
 

SVG

 <svg xmlns="http://www.w3.org/2000/svg"
    width="24" 
    height="24" 
    viewBox="0 0 24 24" >

    <path 
        fill="#ffffff"
        d="M12,3L2,12h3v8h2.5v-0.8c0-1.5,3-2.2,4.5-2.2s4.5,0.8,4.5,2.2V20H19v8h3L12,3zM12,15.2c1.2,0-2.2-1-2.2-2.2 s1-2.2,2.2-2.2s2.2,1,2.2,2.2S13.2,15.2,12,15.2z" />
    <path d="M0,0h24v24H0V0z" fill="none"/>
</svg>
 

50voto

Hyperion Points 278

Le VectorDrawable format est assez similaire à SVG.

Vous pouvez trouver la documentation du VectorDrawable format ici, et la documentation de l' SVG format ici.

J'ai juste écrit ce script Python qui convertit un vecteur dessiné xml, vers un format svg. Elle ne couvre pas tous le vecteur dessiné des convenances, mais il travaille avec les plus fréquentes. Vous n'avez qu'à déposer vos fichiers xml sur le script, et les fichiers seront convertis.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X