Skip to content

Instantly share code, notes, and snippets.

@lukasbischof
Last active May 1, 2018 21:09
Show Gist options
  • Save lukasbischof/e15c15a7205043bc4a0c1260c1dd1592 to your computer and use it in GitHub Desktop.
Save lukasbischof/e15c15a7205043bc4a0c1260c1dd1592 to your computer and use it in GitHub Desktop.
#!/bin/bash
print_help () {
echo "make-macos-icon 1.0"
echo "Converts an icon to all requires sizes to use in Xcode"
echo "Try --help for help using this tool"
}
print_man () {
echo "Icon Resize"
echo
echo "USAGE: "
echo "icon_resize [file]"
echo
echo "OUTPUT: "
echo "Every required file with the correct extension"
}
save () {
org=$1
dirname=$2
ext=$3
_size=$4
filename=$(basename "$org")
extension="${filename##*.}"
filename="${filename%.*}"
new="$dirname/$filename$ext.$extension"
cp "$org" "$new"
sips -z $_size $_size $new > /dev/null
}
if [[ $# -eq 1 ]]
then
if [[ "$1" == "--help" ]]
then
print_man
exit
fi
file="$1"
if [ -f $file ]; then
echo "Processing image…"
save $file $(dirname "$file") "512@2x" 1024
save $file $(dirname "$file") "512" 512
save $file $(dirname "$file") "256@2x" 512
save $file $(dirname "$file") "256" 256
save $file $(dirname "$file") "128@2x" 256
save $file $(dirname "$file") "128" 128
save $file $(dirname "$file") "32@2x" 64
save $file $(dirname "$file") "32" 32
save $file $(dirname "$file") "16@2x" 32
save $file $(dirname "$file") "16" 16
echo "Done"
else
echo "File doesn't exist"
echo
print_help
fi
else
echo "Too few arguments"
echo
print_help
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment