次のImageMagickスクリプトを使用してFaviconイメージを作成します。
convert src/favicon.svg \
\( -clone 0 -resize 16x16 \) \
\( -clone 0 -resize 32x32 \) \
\( -clone 0 -resize 48x48 \) \
-delete 0 -colors 256 -bordercolor transparent -border 10% -background transparent \
site/public/favicon.ico
これは22KiB ISOを生成します。
convert src/favicon.svg -resize 48x48 -colors 256 -bordercolor transparent -border 10% -background transparent 48.png
私が何か間違っているので、ファイルサイズが大きくなりますか?画像は1色だけで、背景は透明です。
すべてを考えてみると、ファイルサイズが非常に小さくなければならないと思います。
答え1
私はImageMagickの専門家ではありませんが、サンプルsvgファイルを使用して行ったいくつかの実験では、結果identify favicon.ico
ファイルに32ビットピクセルが使用されたことがわかりました。48.png
オプションをパラメータリストの最後に移動することで、-colors 256
より適切な8ビット深さと元のサイズの約半分のアイコンファイルが得られました。