1
0
Fork 0
mirror of https://github.com/matomo-org/matomo-icons.git synced 2024-09-19 17:03:45 +02:00
matomo-icons/convert.sh

56 lines
1.3 KiB
Bash
Raw Normal View History

2016-12-21 15:10:23 +01:00
#!/bin/bash
shopt -s globstar
size=16
for i in src/**/*.{png,gif,jpg,ico}; do
2016-12-21 15:10:23 +01:00
echo "$i"
absDirname=$(dirname "$i")
origFilename=$(basename "$i")
code=${origFilename%.*}
2016-12-21 15:10:23 +01:00
dirname="dist/${absDirname#src/}"
distFile="${dirname}/${code}.png"
2016-12-21 15:10:23 +01:00
echo "$distFile"
if [ ! -d "$dirname" ]
then
mkdir -p "$dirname"
fi
if [[ $i == *.ico ]]
then
if file "$i" | grep -E "HTML|empty| data" # if no valid image
then
rm "$i"
else
if [ ! -d "tmp" ]
then
mkdir "tmp"
fi
largestIcon=$(python analyseIco.py "$i")
newIcon="tmp/${code}.ico"
convert ${i}\[$largestIcon\] $newIcon
i=$newIcon
fi
fi
2016-12-21 15:10:23 +01:00
convert \
"$i" \
2016-12-21 19:50:30 +01:00
-strip \
2016-12-21 15:10:23 +01:00
-transparent white \
2016-12-21 20:22:12 +01:00
-background none \
2016-12-21 15:10:23 +01:00
-trim \
-resize ${size}x${size} \
-gravity center \
-extent ${size}x${size} \
"$distFile"
# input file
2016-12-21 19:50:30 +01:00
# strip metadata
2016-12-21 15:10:23 +01:00
# make background transparent
# keep transparency
# cut border
# get only one image from .ico
2016-12-21 15:10:23 +01:00
# resize while keeping the aspect ratio
# center image
# fit to 16x16
# optimize png:
optipng -o 9 -q "$distFile"
2016-12-21 20:22:12 +01:00
echo ""
2016-12-21 15:10:23 +01:00
done