Skip to content

Instantly share code, notes, and snippets.

@DonRichards
Forked from lavoiesl/favicon.sh
Created January 18, 2017 12:11
Show Gist options
  • Save DonRichards/7d9f15dd9db46269e4a526fbbda6f99b to your computer and use it in GitHub Desktop.
Save DonRichards/7d9f15dd9db46269e4a526fbbda6f99b to your computer and use it in GitHub Desktop.
#!/bin/bash
# Converts an image in a multi-resolution favicon
# Requires Imagemagick
#
# @link https://gist.github.com/lavoiesl/a7ccb4affe869d0a0bca
if [[ "$#" != "2" ]]; then
echo "Usage: $0 input.png output.ico" >&2
exit 1
fi
input="$1"
output="$2"
sizes="16 32 64 128 256"
tmp_dir=$(mktemp -d /tmp/favicon.XXXXXXXXXX)
files=""
for size in $sizes; do
file="${tmp_dir}/${size}.png"
convert "${input}" -resize "${size}x${size}" -background transparent -colors 256 -flatten "${file}"
files="${files} ${file}"
done
convert "${files}" "${output}"
rm -R "${tmp_dir}"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment