36

Illustrator などのプログラムでベクター画像を使用している場合、Android の VectorDrawable フレームワークが使用する正しい形式を取得するにはどうすればよいですか?

SVG を VectorDrawable xml 形式に変換するツールを見つけました: http://inloop.github.io/svg2android/ しかし、SVG は「パス」のみを使用する必要があります。

そのようなファイルを出力する方法はありますか?

4

4 に答える 4

47

Android Studio を使用している場合、最適な方法は次のとおりです。

  • 「drawable」フォルダーを右クリック > 新規 > ベクター アセット
  • [ローカル SVG ファイル] をクリックして独自の SVG ファイルをインポートするか、[マテリアル アイコン] をクリックして提供されたアイコンを使用します。
  • リソース名を必要なものに変更します。
  • [次へ] をクリックして、ターゲット モジュールと res ディレクトリを選択します。
  • [完了] をクリックします。

ウィザードは、SVG ファイルから XML を生成します。

于 2016-04-07T13:46:12.573 に答える
13

SVG to VectorDrawable Converterまたはそのオンライン バージョンを使用するだけです。これは、SVG イメージから Android VectorDrawable XML リソース ファイルへのバッチ コンバーターです。

コンバーターの使用方法に関する十分な情報を提供する readme へのリンクを示します。

于 2015-08-23T07:35:40.280 に答える
12

すべてをパスに変換

AI プロジェクト ファイルを として保存する前にSVG、次のことを確認してください。

  1. を使用して、すべてのパスをアウトラインに変換しますObject > Expand...

  2. オブジェクトを選択した状態で右クリックし、 を選択して、シェイプ パス ( など<circle>) を に変換します。Compound PathsMake Compound Path

それが完了すると、SVG の各形状は<path>.


SVG を最適化する

質問に記載されているアプリを使用して、中程度の複雑さの SVG をベクター型ドローアブルに変換しようとしたときに、一部の部分を忘れるという問題がありました。フォーマット方法に関係があるに違いないと考えたので、SVG 最適化アプリであるSVGOMGを使用して、必要最小限のものまで取り除くことにしました。

SVGOMG または別のアプリを使用して SVG を最適化し、ファイルをダウンロードします。


最適化された SVG をベクター型ドローアブルに変換する

ダウンロードした SVG をSVG2Androidにドロップすると、必要なものが得られます。

于 2015-04-29T21:22:37.550 に答える