rendered paste body#!/bin/sh
### Settings ###
colorspace=RGB
borderRadius=5
borderColor='#DEBE4A'
borderSize=2
backgroundColor=black
imageSize=110
searchPattern="*cover*.jpg"
ouputName="cover.bmp"
### Script ###
read -p "Enter 'c' to convert and 'r' to remove all covers: " line
line=$(echo $line|cut -c 1)
if [ "$line" = "c" ]; then
convert -size $borderRadius'x'$borderRadius -fill $borderColor xc:$backgroundColor -draw 'circle 0,0 0,'$(($borderRadius-1)) \
\( xc:none -draw 'circle 0,0 0,'$(($borderRadius-$borderSize-1)) \) \
-compose dst_out -composite /tmp/corner.png
IFS='
'
finder=$(find . -iname $searchPattern)
count=0
for file in $finder; do
count=$(($count + 1))
done
i=0
for file in $finder; do
out_file=$(dirname $file)'/'$ouputName
i=$(($i + 1))
echo 'Converting cover '$i' of '$count' ... ('$out_file')'
convert $file -resize $(($imageSize - $borderSize*2))'x'$(($imageSize - $borderSize*2)) -colorspace $colorspace $out_file
convert $out_file -bordercolor $borderColor -border $borderSize -matte \
\( /tmp/corner.png -flip -flop \) -gravity NorthWest -composite \
\( /tmp/corner.png -flop \) -gravity SouthWest -composite \
\( /tmp/corner.png -flip \) -gravity NorthEast -composite \
\( /tmp/corner.png \) -gravity SouthEast -composite \
+matte $out_file
done
rm /tmp/corner.png
elif [ "$line" = "r" ]; then
find . -name $ouputName -exec rm -v {} \;
else
echo "Exit"
exit 1
fi