Files
2026-05-03 05:35:08 -03:00

62 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
if ! command -v magick &> /dev/null; then
echo "ImageMagick (magick) is required. Install it first."
exit 1
fi
mkdir -p bg blog
# Final exact dimensions (not just width anymore)
BG_WIDTH=1920
BG_HEIGHT=1080 # Hero (16:9)
BLOG_WIDTH=800
BLOG_HEIGHT=600 # 3-column cards (4:3 is a safe default)
# Quality
BG_QUALITY=82
BLOG_QUALITY=75
echo "Converting JPG → WebP with fixed dimensions + center crop..."
for img in *.jpg *.jpeg; do
[ -e "$img" ] || continue
filename=$(basename "$img")
name="${filename%.*}"
echo "→ Processing $img"
# HERO / BG (cover + center crop)
magick "$img" \
-resize ${BG_WIDTH}x${BG_HEIGHT}^ \
-gravity center \
-extent ${BG_WIDTH}x${BG_HEIGHT} \
-strip \
-quality $BG_QUALITY \
-define webp:method=6 \
-define webp:autofilter=true \
-define webp:thread-level=1 \
-colorspace sRGB \
"bg/${name}.webp"
# BLOG (cover + center crop)
magick "$img" \
-resize ${BLOG_WIDTH}x${BLOG_HEIGHT}^ \
-gravity center \
-extent ${BLOG_WIDTH}x${BLOG_HEIGHT} \
-strip \
-quality $BLOG_QUALITY \
-define webp:method=6 \
-define webp:autofilter=true \
-define webp:thread-level=1 \
-colorspace sRGB \
"blog/${name}.webp"
done
echo "Done! Images cropped + standardized in ./bg and ./blog"