35 lines
866 B
Bash
Executable File
35 lines
866 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
sizes=(640 320 160 80)
|
|
presizes=(120 60 30)
|
|
|
|
rm samples.csv
|
|
|
|
echo "Getting file dimensions..."
|
|
for f in sample/*unsplash.jpg; do
|
|
gm identify -format %f,%w,%h $f >> samples.csv
|
|
done
|
|
|
|
for size in ${presizes[*]}; do
|
|
for f in sample/*unsplash.jpg; do
|
|
echo "Compressing thumbnail $f at $size"
|
|
if [ -f "${f%.jpg}_pre$size.jpg" ]; then
|
|
continue
|
|
fi
|
|
gm convert $f -resize x$size -compress jpeg -quality 40 ${f%.jpg}_pre$size.jpg
|
|
gm convert $f -resize x$size -compress webp -quality 35 ${f%.jpg}_pre$size.webp
|
|
done
|
|
done
|
|
for size in ${sizes[*]}; do
|
|
for f in sample/*unsplash.jpg; do
|
|
echo "Compressing $f at $size"
|
|
if [ -f "${f%.jpg}_$size.jpg" ]; then
|
|
continue
|
|
fi
|
|
gm convert $f -resize x$size -compress jpeg -quality 75 ${f%.jpg}_$size.jpg
|
|
gm convert $f -resize x$size -compress webp -quality 70 ${f%.jpg}_$size.webp
|
|
done
|
|
done
|