【Androidアプリ開発】PNG画像をベクター画像（SVG形式）に変換して色も変更してアプリアイコンに設定する方法

[yamaday0u](https://twitter.com/yamaday0u)です。

会社のタスクで、アプリアイコンに設定したいPNG画像をベクター画像にする時にかなり苦戦したので、同じ苦労をする人を少しでも減らせるよう、解決した方法を紹介します。

本記事の内容は以下のとおりです。

- PNG画像をベクター画像（SVG形式）に変更（無料サービスを利用）
- Android Studioでアイコン設定
- ベクター画像の色を変える
 
## PNG画像をベクター画像（SVG形式）に変更（無料サービスを利用）

説明用のサンプル画像として以下のPNG画像を使用します。

<center><img width="200" alt="heart.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/46e4e2d6-c016-7fa8-cf42-ccf31b88ac7d.png"></center>

(<a href="https://pixabay.com/ja/users/elisariva-1348268/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1971128">ElisaRiva</a>による<a href="https://pixabay.com/ja/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1971128">Pixabay</a>からの画像)

PNG画像をベクター画像に変換するには、Vectorization.orgという無料サービスを利用します。無料でPNG画像をベクター画像に変換してくれるサイトを色々探しましたが、このサイトが一番使いやすかったです。
![スクリーンショット 2022-11-13 10.29.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/42520384-c126-4cf2-7998-aba3ffb72990.png)

リンクを開き、「Upload a file」にベクター画像にしたい画像データを選択します。「Output format」はSVGを選択します。

「Start」をクリックすると、次のようにSVG形式のベクター画像が生成されるのでダウンロードします。
![スクリーンショット 2022-11-13 10.30.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/e51b9bd1-b4e2-b8c3-5c3f-057a38ce7fea.png)


## Android Studioでアイコン設定

つづいてAndroid Studioでアプリのアイコンを設定します。

任意のAndroidアプリのプロジェクトをAndroid Studioで開き、「Resource Manager」→「＋」→「Image Asset」をクリックします。
![スクリーンショット 2022-11-13 15.37.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/517f6994-af7f-9133-ed82-e8f44b0aaf01.png)

### Foreground Layerの設定

Configure Image Assetというウィンドウが表示されます。まずForeground Layerを選び、Source Asset → Asset Type: Imageを選択し、さきほどのダウンロードしたSVGファイルの保存場所をPathに指定します。

![スクリーンショット 2022-11-13 15.43.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/a0be8bf0-011f-1a10-ee38-3ef6c999391c.png)

### Background Layerの設定

次にBackground Layerを選びアプリアイコンの背景色を設定します。Source Asset → Asset Type: Colorを選択し、任意の色を選択してください。

![スクリーンショット 2022-11-13 15.44.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/3cb3de6d-8f55-2f2c-9c77-17beebd4afe6.png)


### アプリをビルド

上記の画面でNext →Finishをクリックしてアプリアイコンの設定を完了します。その後、アプリをビルドすると以下の画像のように設定したアプリアイコンが反映されます。

これでPNG画像をベクター画像に変換してアプリアイコンに設定することができました。

![スクリーンショット 2022-11-13 17.38.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/b0bb001a-494c-2df6-ff03-a0a7f7821f10.png)

## ベクター画像の色を変える

さきほど設定したアプリアイコンはハートの線が黒色でした。これを白色にしてみます。

ベクター画像の色を変えるには、画像ファイルのデータを直接編集します。任意のテキストエディタで先程のSVGファイルを開きます（画像ではVisual Studio Codeで開いています）。

gタグ内のfill属性に設定されている「#000000（黒色）」を「#FFFFFF（白色）」に変更します。

![スクリーンショット 2022-11-13 17.38.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/efede65a-6e7c-4b35-449c-bfa504e2c7ca.png)

![スクリーンショット 2022-11-13 17.38.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/1bd1161d-174b-6f25-86b5-5dae81c047ee.png)

変更を保存したら先ほどの手順でアプリアイコンを設定してからアプリをビルドします。すると以下のとおりアイコンの色を変更することができました！

![スクリーンショット 2022-11-13 17.38.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849306/d2f40875-9237-fb20-19ac-66fa2dc3cdce.png)