Update script to generate app icons
This commit is contained in:
parent
76279629dd
commit
93a70b9438
2 changed files with 51 additions and 33 deletions
51
scale-app-icons
Executable file
51
scale-app-icons
Executable file
|
|
@ -0,0 +1,51 @@
|
|||
#!/bin/zsh
|
||||
|
||||
function usage() {
|
||||
NAME=$(basename "$0")
|
||||
echo "Usage: ${NAME} <source-icon> <output-directory>"
|
||||
}
|
||||
|
||||
IN_FILE="$1"
|
||||
OUT_DIR="$2"
|
||||
|
||||
if [[ ! -r "$IN_FILE" ]]; then
|
||||
echo "Missing source icon, or file not found: $IN_FILE"
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
if [[ ! -d "$OUT_DIR" ]]; then
|
||||
echo "Missing output directory, or directory not found: $OUT_DIR"
|
||||
usage
|
||||
exit 2
|
||||
fi
|
||||
|
||||
FILENAME=$(basename "$IN_FILE")
|
||||
|
||||
echo "* Generating App Store marketing icon at 1024x1024 px"
|
||||
APPSTORE_FILE="${OUT_DIR}/${FILENAME%.png}_marketing_1024.png"
|
||||
echo "> convert '${IN_FILE}' -scale 1024x1024 '${APPSTORE_FILE}'"
|
||||
gm convert "$IN_FILE" -scale 1024x1024 "$APPSTORE_FILE"
|
||||
|
||||
for SIZE in 20 29 40 60; do
|
||||
PREFIX="${FILENAME%.png}_iPhone_$SIZE"
|
||||
echo "* Generating iPhone icons at $SIZE points with filename prefix $PREFIX"
|
||||
S=$((2 * SIZE))
|
||||
gm convert "$IN_FILE" -scale ${S}x${S} "$OUT_DIR/$PREFIX@2x.png"
|
||||
S=$((3 * SIZE))
|
||||
gm convert "$IN_FILE" -scale ${S}x${S} "$OUT_DIR/$PREFIX@3x.png"
|
||||
done
|
||||
|
||||
for SIZE in 20 29 40 76 83.5; do
|
||||
PREFIX="${FILENAME%.png}_iPad_$SIZE"
|
||||
echo "* Generating iPad icons at $SIZE points with filename prefix $PREFIX"
|
||||
S=$((2 * SIZE))
|
||||
gm convert "$IN_FILE" -scale ${S}x${S} "$OUT_DIR/$PREFIX@2x.png"
|
||||
done
|
||||
|
||||
for SIZE in 16 32 128 256 512; do
|
||||
PREFIX="${FILENAME%.png}_Mac_$SIZE"
|
||||
echo "* Generating Mac icons at $SIZE points with filename prefix $PREFIX"
|
||||
gm convert "$IN_FILE" -scale ${SIZE}x${SIZE} "$OUT_DIR/$PREFIX.png"
|
||||
S=$((2 * SIZE))
|
||||
gm convert "$IN_FILE" -scale ${S}x${S} "$OUT_DIR/$PREFIX@2x.png"
|
||||
done
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
function usage() {
|
||||
NAME=$(basename "$0")
|
||||
echo "Usage: ${NAME} <source-icon> <output-directory>"
|
||||
}
|
||||
|
||||
IN_FILE="$1"
|
||||
OUT_DIR="$2"
|
||||
|
||||
if [[ ! -r "$IN_FILE" ]]; then
|
||||
echo "Missing source icon, or file not found: $IN_FILE"
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
if [[ ! -d "$OUT_DIR" ]]; then
|
||||
echo "Missing output directory, or directory not found: $OUT_DIR"
|
||||
usage
|
||||
exit 2
|
||||
fi
|
||||
|
||||
FILENAME=$(basename "$IN_FILE")
|
||||
|
||||
echo "* Generating App Store icon at 1024x1024 px"
|
||||
APPSTORE_FILE="${OUT_DIR}/${FILENAME%.png}_1024.png"
|
||||
echo "> convert '${IN_FILE}' -scale 1024x1024 '${APPSTORE_FILE}'"
|
||||
gm convert "$IN_FILE" -scale 1024x1024 "$APPSTORE_FILE"
|
||||
|
||||
for SIZE in 20 29 40 60 76 83.5; do
|
||||
PREFIX="${FILENAME%.png}_$SIZE"
|
||||
echo "* Generating app icons at $SIZE points with filename prefix $PREFIX"
|
||||
retina-scale "$IN_FILE" "$OUT_DIR" "$PREFIX" $SIZE $SIZE
|
||||
done
|
||||
Loading…
Reference in a new issue