-
Notifications
You must be signed in to change notification settings - Fork 69
Expand file tree
/
Copy pathGenerateIssuerIconAssets.sh
More file actions
executable file
·47 lines (44 loc) · 1 KB
/
GenerateIssuerIconAssets.sh
File metadata and controls
executable file
·47 lines (44 loc) · 1 KB
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
#!/usr/bin/env bash
set -euo pipefail
get_name() {
echo $1 | sed -E 's:.+/(.+)\.png:\1:'
}
write_json() {
# JSON copied from Xcode output
cat << EOF > "$2"
{
"images" : [
{
"idiom" : "universal",
"filename" : "${1}.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "${1}@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "${1}@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
EOF
}
cd "$(dirname "$0")"
for file in ./IssuerIcons/*.png; do
name="$(get_name $file)"
echo "Generating icon for ${name}"
imageset="./Tofu/Assets.xcassets/${name}.imageset/"
mkdir -p "$imageset"
sips --resampleWidth 192 "$file" --out "${imageset}${name}@3x.png" >/dev/null
sips --resampleWidth 128 "$file" --out "${imageset}${name}@2x.png" >/dev/null
sips --resampleWidth 64 "$file" --out "${imageset}${name}.png" >/dev/null
write_json "$name" "${imageset}Contents.json"
done