#!/bin/bash

LETTERS="$1"
BG_IMAGE=dev_icon.png
OUTPUT="images/"${1,,}-512.png
OUTPUT_SMALL="images/"${1,,}-192.png


# --- General Settings ---
SIZE="512x512"
TEXT_COLOR="#000000"   # White text usually looks best on photo backgrounds
FONT_SIZE="150"
FONT_SIZE_DECOR="200"
FONT_WEIGHT="bold"
LINE_SPACING="-30"

# --- Border (Stroke) Settings ---
STROKE_COLOR="#000000" # Black border to help it pop
STROKE_WIDTH="2"       

# --- Shadow Settings ---
SHADOW_SETTINGS="80x5+4+4" # Slightly darker/bigger shadow for busy backgrounds
SHADOW_COLOR="black"

# Generate the image
convert "$BG_IMAGE" -background transparent -resize "${SIZE}^" -gravity center -extent "$SIZE" \
  \( -size "$SIZE" xc:transparent \
     -fill "$TEXT_COLOR" \
	 -weight "$FONT_WEIGHT" \
	 -interline-spacing "$LINE_SPACING" \
     -stroke "$STROKE_COLOR" \
     -strokewidth "$STROKE_WIDTH" \
     -pointsize "$FONT_SIZE" \
     -gravity center \
     -annotate +0-10 "$LETTERS" \
     -pointsize "$FONT_SIZE_DECOR" \
     -annotate -90x-90-30+0 "<   >" \
     \( +clone -background "$SHADOW_COLOR" -shadow "$SHADOW_SETTINGS" \) \
     +swap -background transparent -layers merge +repage \
  \) \
  -strip \
  -quality 95 \
  -gravity center -composite \
  "$OUTPUT"

convert "$OUTPUT" -resize 192x192 "$OUTPUT_SMALL"

echo "Success! Icon with background image saved as $OUTPUT and $OUTPUT_SMALL"