forked from busterc/cordova-resource-generators
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathcordova-generate-icons
executable file
·65 lines (54 loc) · 2.2 KB
/
cordova-generate-icons
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/bin/bash
# Generate Cordova icons
function usage() {
echo "usage: $0 <image-filename> [output-directory]";
exit 1;
}
[ "$1" ] || usage
[ "$2" ] || set "$1" "."
image=$1
output=$2/resources/icon
devices=ios,android #,windows-phone,bada,bada-wac,blackberry,webos
eval mkdir -p "$output/{$devices}"
# Show the user some progress by outputing all commands being run.
set -x
# Explicitly set background in case image is transparent (see: #3)
convert="convert $image -background none"
function androidConvertIcon() {
drawables=drawable,drawable-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi
eval mkdir -p "$output/android/{$drawables}"
$convert -resize 36x36 "$output/android/drawable-ldpi/icon.png"
$convert -resize 48x48 "$output/android/drawable-mdpi/icon.png"
$convert -resize 72x72 "$output/android/drawable-hdpi/icon.png"
$convert -resize 96x96 "$output/android/drawable-xhdpi/icon.png"
$convert -resize 96x96 "$output/android/drawable/icon.png"
function androidCopyIcon() {
androidOutput=$(find . -type d | grep "platforms/android/res$")
find . -type d | grep "resources/icon/android/drawable" | xargs -I{} cp -R {} $androidOutput
}
androidCopyIcon
}
androidConvertIcon
function iosConvertIcon() {
$convert -resize 29x29 "$output/ios/icon-small.png"
$convert -resize 40x40 "$output/ios/icon-40.png"
$convert -resize 50x50 "$output/ios/icon-50.png"
$convert -resize 57x57 "$output/ios/icon.png"
$convert -resize 58x58 "$output/ios/[email protected]"
$convert -resize 60x60 "$output/ios/icon-60.png"
$convert -resize 72x72 "$output/ios/icon-72.png"
$convert -resize 76x76 "$output/ios/icon-76.png"
$convert -resize 80x80 "$output/ios/[email protected]"
$convert -resize 100x100 "$output/ios/[email protected]"
$convert -resize 114x114 "$output/ios/[email protected]"
$convert -resize 120x120 "$output/ios/[email protected]"
$convert -resize 144x144 "$output/ios/[email protected]"
$convert -resize 152x152 "$output/ios/[email protected]"
$convert -resize 512x512 "$output/ios/iTunesArtwork.png"
$convert -resize 1024x1024 "$output/ios/[email protected]"
function iosCopyIcon() {
cp $(find . | grep "resources/icon/ios/.*\.png") "$(find . -type d | grep 'platforms/ios/.*Resources/icons')"
}
iosCopyIcon
}
iosConvertIcon