このスクリプトは既存のファイルを更新するため、プロジェクトに合わせて変更する必要がある場合があります。「確認」行を削除するか、私の確認スクリプトを取得してそれに合わせてください。
警告:.png
現在のディレクトリ内のすべてのファイルが破壊されます。
#!/bin/bash -eu
# public domain, by Sam Watkins
echo "You need to run this from a directory containing only the png icons."
confirm "Are you in the icons directory?"
source=`readlink -f "$1"`
chmod -w $source
v convert "$source" -resize 512x512 -background white -alpha remove -alpha off tmp-512-white.png
v convert "$source" -resize 512x512 tmp-512.png
sizes="16 32 64 128 256"
favicons=
for W in $sizes; do
F=favicon-${W}x$W.png
v convert tmp-512.png -resize ${W}x$W $F
favicons="$favicons $F"
done
v convert $favicons -colors 256 favicon.ico
for F in *.png; do
case "$F" in
favicon-*)
;;
apple-touch-icon*)
v convert tmp-512-white.png -resize `identify -format "%wx%h" "$F"` "$F"
;;
*)
v convert tmp-512.png -resize `identify -format "%wx%h" "$F"` "$F"
;;
esac
done
rm -f tmp-512-white.png tmp-512.png
https://ucm.dev/b/make-icons
https://ucm.dev/b/confirm