mirror of
https://github.com/arkorty/Expensso.git
synced 2026-03-17 16:41:43 +00:00
feat: beautify the UI
This commit is contained in:
45
generate-app-icons
Executable file
45
generate-app-icons
Executable file
@@ -0,0 +1,45 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
ICON="assets/app-icon.png"
|
||||
|
||||
# Android icons
|
||||
for d in mdpi:48 hdpi:72 xhdpi:96 xxhdpi:144 xxxhdpi:192; do
|
||||
density="${d%%:*}"
|
||||
size="${d##*:}"
|
||||
|
||||
out_dir="android/app/src/main/res/mipmap-${density}"
|
||||
round_icon="${out_dir}/ic_launcher_round.png"
|
||||
|
||||
sips -z "$size" "$size" "$ICON" \
|
||||
--out "${out_dir}/ic_launcher.png" >/dev/null
|
||||
|
||||
sips -z "$size" "$size" "$ICON" \
|
||||
--out "$round_icon" >/dev/null
|
||||
|
||||
# Proper circular crop with preserved transparency (ImageMagick)
|
||||
if command -v magick >/dev/null 2>&1; then
|
||||
magick "$round_icon" \
|
||||
-alpha set -background none \
|
||||
\( -size ${size}x${size} xc:none \
|
||||
-fill white -draw "circle $((size/2)),$((size/2)) $((size/2)),1" \) \
|
||||
-compose CopyOpacity -composite \
|
||||
"$round_icon"
|
||||
else
|
||||
echo "Warning: ImageMagick not found; skipping circular crop for $round_icon" >&2
|
||||
fi
|
||||
done
|
||||
|
||||
# iOS icons
|
||||
OUT="ios/Expensso/Images.xcassets/AppIcon.appiconset"
|
||||
|
||||
sips -z 40 40 "$ICON" --out "$OUT/Icon-20@2x.png" >/dev/null
|
||||
sips -z 60 60 "$ICON" --out "$OUT/Icon-20@3x.png" >/dev/null
|
||||
sips -z 58 58 "$ICON" --out "$OUT/Icon-29@2x.png" >/dev/null
|
||||
sips -z 87 87 "$ICON" --out "$OUT/Icon-29@3x.png" >/dev/null
|
||||
sips -z 80 80 "$ICON" --out "$OUT/Icon-40@2x.png" >/dev/null
|
||||
sips -z 120 120 "$ICON" --out "$OUT/Icon-40@3x.png" >/dev/null
|
||||
sips -z 120 120 "$ICON" --out "$OUT/Icon-60@2x.png" >/dev/null
|
||||
sips -z 180 180 "$ICON" --out "$OUT/Icon-60@3x.png" >/dev/null
|
||||
sips -z 1024 1024 "$ICON" --out "$OUT/Icon-1024.png" >/dev/null
|
||||
|
||||
echo "Icons generated!"
|
||||
Reference in New Issue
Block a user