web-dev-qa-db-ja.com

VectorDrawableをSVGに変換する

手動またはWebツールを使用して、逆の変換(SVGからVectorDrawable)を行いました。

しかし、私は反対のことをするのに苦労しています。 VectorDrawableがありますが、それをSVGに変換する方法がわからず、オンラインツールを見つけることができません。

誰もがこれを経験しており、それを行うための手順やツールは何ですか?

46
sandalone

私が従うステップ:

Android:pathDatadに置き換えられました

Android:fillColorfillに置き換えられました

fillColorなしのVectorDrawableのパスは、SVGではfill="none"です。

Android:viewportHeight="24" Android:viewportWidth="24"はSVGのviewBox="0 0 24 24"です。

ベクトル描画可能

<?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>
82
Kuti Gbolahan

VectorDrawable形式はSVGとかなり似ています。

VectorDrawable形式のドキュメント here 、およびのドキュメントを見つけることができます。 _ svg _format here .

this Python script は、ベクトル描画可能xmlをsvgに変換します。すべてのベクトル描画可能なプロパティをカバーしているわけではありませんが、最も一般的なプロパティで動作します。 xmlファイルをスクリプトにドロップするだけで、ファイルは変換されます。

27
Hyperion