servers.coop/static/generate_webp.sh

52 lines
1.4 KiB
Bash
Executable File

#!/bin/bash -e
quality="80"
# if [ -z "$quality" ]; then
# echo "first argument (quality level, 1 to 100) is required."
# exit 1
# fi
svgToWebp () {
svgFilename="$1"
pngFilename="generated/$(echo "$svgFilename" | sed 's|.svg|.png|')"
webpFilename="$(echo "$pngFilename" | sed 's|.png|.webp|')"
quality="$2"
sizeArgs=""
if [ ! -z "$3" ] && [ ! -z "$4" ]; then
sizeArgs="-w $3 -h $4"
fi
inkscape --without-gui "$svgFilename" $sizeArgs --export-png "$pngFilename"
~/Desktop/programs/libwebp-1.2.0-linux-x86-64/bin/cwebp -q "$quality"-m 6 -preset text -alpha_filter best \
"$pngFilename" -o "$webpFilename"
rm "$pngFilename"
}
pngToWebp () {
pngFilename="$1"
webpFilename="generated/$(echo "$pngFilename" | sed 's|.png|.webp|')"
quality="$2"
~/Desktop/programs/libwebp-1.2.0-linux-x86-64/bin/cwebp -q "$quality"-m 6 -preset text -alpha_filter best \
"$pngFilename" -o "$webpFilename"
}
mkdir -p generated
svgToWebp "arms-crossed-people.svg" "$quality"
svgToWebp "squatting-person.svg" "$quality"
svgToWebp "dove.svg" "$quality"
svgToWebp "handshake.svg" "$quality"
svgToWebp "logo-autonomic.svg" "$quality"
svgToWebp "logo-cni.svg" "$quality"
svgToWebp "logo-mediablaze.svg" "$quality"
svgToWebp "logo.svg" "$quality"
svgToWebp "logo-wa.svg" "$quality" "120" "105"
pngToWebp "pyramid.png" "$quality"
pngToWebp "logo-cyberia.png" "$quality"
pngToWebp "logo-mc3.png" "$quality"