-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoptimize_images.sh
executable file
·50 lines (39 loc) · 1.44 KB
/
optimize_images.sh
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
#!/usr/bin/env bash
ROOT_DIR=$( realpath $( dirname "${BASH_SOURCE[0]}" ) )
optimize_images () {
directory=$1
size=$2
format=$3
quality=$4
input_directory="${ROOT_DIR}/images/${1}"
output_directory="${ROOT_DIR}/images/optimized/${1}-${2}"
if [ ! -d "$input_directory" ]; then
echo "Input directory $input_directory does not exist. Skipping..."
return
fi
echo "Optimizing images in images/${1}, saving to images/optimized/${1}-${2} ..."
mkdir -p images/optimized
rm -rf $output_directory
cp -r $input_directory $output_directory
cd $output_directory
GLOBIGNORE="*.svg"
#mogrify -resize ${size}^ -gravity Center -extent ${size} -format ${format} -quality ${quality} *
mogrify -adaptive-resize ${size}\> -format ${format} -quality ${quality} *
rm -f *.jpg *.jpeg *.png *.gif
unset GLOBIGNORE
cd $ROOT_DIR
}
# Optimize images of organizers and advisory-board
optimize_images organizers 300x300 webp 90
optimize_images jury 300x300 webp 90
# Optimize images of speakers
optimize_images speakers 600x600 webp 90
# Optimize sponsors and partners logos
optimize_images sponsors 600x600 webp 90
optimize_images partners 600x600 webp 90
optimize_images honorary-patronages 600x600 webp 90
# Optimize AI-generated images
optimize_images ai-generated 800x800 webp 90
# Images from the exhibition
optimize_images exhibition 400x270 webp 90
optimize_images exhibition 2400x1600 webp 90