65 lines
1.3 KiB
Text
65 lines
1.3 KiB
Text
|
#!/bin/bash
|
||
|
ORIGEN=$1
|
||
|
# Colores bash
|
||
|
ROJO='\e[1;31m'
|
||
|
VERDE='\e[1;32m'
|
||
|
AZUL='\e[1;34m'
|
||
|
NORMAL='\e[0m'
|
||
|
|
||
|
function Ayuda {
|
||
|
echo -e "${AZUL}PNG2WEBP: Convertir png en webp${NORMAL}"
|
||
|
echo -e " png2webp imagen.png"
|
||
|
echo -e " Genera fichero: imagen.webp"
|
||
|
echo
|
||
|
}
|
||
|
|
||
|
function Tipo {
|
||
|
IMAGEN=$1
|
||
|
# Comprobar tipo fichero
|
||
|
TIPO=$(mimetype $IMAGEN |awk -F '/' '{print $2}')
|
||
|
if [ $TIPO != "png" ]
|
||
|
then
|
||
|
echo -e "${ROJO}ERROR:${NORMAL} $ORIGEN No es una imagen ${AZUL}PNG${NORMAL}"
|
||
|
return 1
|
||
|
else
|
||
|
return 0
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
# Existe convert (en paquete ImageMagick)
|
||
|
convert >/dev/null 2>&1
|
||
|
RET=$?
|
||
|
if [ $RET -eq 0 ]
|
||
|
then
|
||
|
# Existe convert
|
||
|
if [ "$ORIGEN" == "" ]
|
||
|
then
|
||
|
Ayuda
|
||
|
exit 1
|
||
|
fi
|
||
|
# Existe fichero ORIGEN
|
||
|
if [ -f $ORIGEN ]
|
||
|
then
|
||
|
Tipo $ORIGEN
|
||
|
TIPO_OK=$?
|
||
|
if [ $TIPO_OK -ne 0 ]
|
||
|
then
|
||
|
exit 1
|
||
|
fi
|
||
|
echo -e "Leyendo $ORIGEN"
|
||
|
DESTINO=$(basename -a --suffix=.png $ORIGEN)".webp"
|
||
|
convert $ORIGEN -quality 50 $DESTINO
|
||
|
echo -e " ${VERDE}$DESTINO${NORMAL} generado"
|
||
|
else
|
||
|
echo -e "${ROJO}Error:${NORMAL}"
|
||
|
echo -e " $ORIGEN no existe"
|
||
|
exit 1
|
||
|
fi
|
||
|
else
|
||
|
# No existe convert
|
||
|
echo -e "${ROJO}Error:${NORMAL}"
|
||
|
echo -e " Su sistema necesita disponer de la aplicacion ${AZUL}convert${NORMAL}"
|
||
|
echo -e " Ejecute: ${VERDE}sudo apt -y install imagemagick${NORMAL}"
|
||
|
exit 1
|
||
|
fi
|