Add a script to quickly generate branding images
This commit is contained in:
parent
04e03a83b4
commit
43e6d8689c
56
scripts/branding-from-svg.sh
Executable file
56
scripts/branding-from-svg.sh
Executable file
@ -0,0 +1,56 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
svg_input="$1"
|
||||||
|
destination_folder="${2:-.}"
|
||||||
|
|
||||||
|
if [ -z "$svg_input" ]; then
|
||||||
|
echo "Usage: $0 <input_svg_file> [destination_folder]"
|
||||||
|
echo "Converts an SVG input to various image formats and sizes based on a predefined list."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d "$destination_folder" ]; then
|
||||||
|
echo "Destination folder does not exist. Creating: $destination_folder"
|
||||||
|
mkdir -p "$destination_folder"
|
||||||
|
fi
|
||||||
|
|
||||||
|
entries=(
|
||||||
|
"android-chrome-192x192.png"
|
||||||
|
"android-chrome-512x512.png"
|
||||||
|
"apple-touch-icon.png"
|
||||||
|
"favicon-16x16.png"
|
||||||
|
"favicon-32x32.png"
|
||||||
|
"favicon.ico"
|
||||||
|
"mstile-144x144.png"
|
||||||
|
"mstile-150x150.png"
|
||||||
|
"mstile-310x150.png"
|
||||||
|
"mstile-310x310.png"
|
||||||
|
"mstile-70x70.png"
|
||||||
|
"safari-pinned-tab.svg"
|
||||||
|
)
|
||||||
|
|
||||||
|
for entry in "${entries[@]}"; do
|
||||||
|
name="${entry%.*}"
|
||||||
|
extension="${entry##*.}"
|
||||||
|
output="$destination_folder/${name}_output.${extension}"
|
||||||
|
|
||||||
|
# Convert SVG to specified dimensions and format
|
||||||
|
case "$extension" in
|
||||||
|
"png")
|
||||||
|
convert -background none -resize "${name: -4}"x"${name: -4}" "$svg_input" "$output"
|
||||||
|
;;
|
||||||
|
"ico")
|
||||||
|
convert "$svg_input" -bordercolor white -border 0 -alpha off "$output"
|
||||||
|
;;
|
||||||
|
"svg")
|
||||||
|
# SVGs don't need conversion, just copy
|
||||||
|
cp "$svg_input" "$output"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Unsupported file format: $entry"
|
||||||
|
continue
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo "Converted $svg_input to $output"
|
||||||
|
done
|
||||||
Loading…
Reference in New Issue
Block a user