web-dev-qa-db-ja.com

iOSアプリ用のSVGベースの画像アセットの読み込み

ThenounprojectからSVG画像としてアイコンを購入しました。次に、 Gapplin というmacOSプログラムを使用して、このSVGをPNGイメージにエクスポートします。 100x100ピクセルの画像として出力されます。

次に、このPNG画像をプレビュープログラムで開き、[ツール]-> [サイズの調整]に移動して、10x10、20x20、および30x30の画像を作成します。次に、これらの画像をXcodeで1x、2x、3xとしてロードします。

これは正しい方法ですか?

13
JK140

いいえ、それは最適なソリューションではありません。

もちろん、現在のソリューションは機能しますが、理想とはほど遠いものです。そうすることで画質が低下します(貴重です!)(詳細については、 こちらを参照 )。次の方法でワークフローを改善できます。

  • エクスポート元のSVGファイルから3つの解像度すべてを使用して、ベクトルベースの画像ソースから可能な限り最高のPNGビットマップを取得します(Gapplinまたは他の画像アプリを使用) );

  • またはconvertingSVGをPDFに変換してから importing the PDF = Xcodeのベクター画像ファイル (前回チェックしたとき、Xcode 8はまだSVGファイルを直接サポートしていないため、古き良きPDF今のところ)で立ち往生しています。

どちらの方法も、画質に関しては非常によく似た結果を生成するはずであり、現在のワークフローからの改善です。

アプリのファイルサイズについては、どちらの方法とも違いはありません。最後の方法を使用しても、Xcodeはbuild timeで必要なアセットを生成します。そのため、アプリは同じ画像/アイコンセットを持ち歩くことになります。最初の方法として。

18
Paulo Mattos