La optimización de imágenes es crucial para mejorar el rendimiento de los sitios web, reduciendo la carga del servidor y mejorando la experiencia del usuario. A continuación, se describe el método utilizado para optimizar imágenes antes de subirlas a la web, utilizando la API de Tinify.
Ventajas de Optimizar Imágenes con la API de Tinify
Optimizar imágenes con la API de Tinify ofrece varias ventajas:
- Comodidad: Solo es necesario seleccionar las imágenes a optimizar y realizar unos pocos clics, o usar un atajo de teclado.
- Relación Tamaño-Calidad: La API de Tinify ofrece la mejor relación entre tamaño y calidad de imagen comparado con herramientas como jpegoptim, guetzli o pngquant.
- Versatilidad: Con un solo script, se pueden optimizar imágenes en formatos .png, .jpg y .webp.
- Operaciones Adicionales: Además de optimizar, la API permite convertir, redimensionar y recortar imágenes de forma inteligente.
- Preservación de Metadatos: Los metadatos de las imágenes originales se conservan en las imágenes optimizadas.
Limitaciones del Método
- Límite de Uso: La API gratuita permite optimizar hasta 500 imágenes por mes. Para más, es necesario pagar.
- Conexión a Internet: Es imprescindible una conexión a Internet para usar la API, ya que las imágenes se envían a los servidores de Tinify para ser optimizadas y luego se descargan de nuevo.
Pasos para Optimizar Imágenes con la API de Tinify
- Obtener una Clave API de Tinify
Visite la página de registro de Tinify y siga las instrucciones para obtener una clave API. Por ejemplo, una clave podría ser 9PwBtWFAt7Bw5fGWrrwmlDDLJSPsX5e.
- Instalar Dependencias
En un sistema operativo Linux, asegúrese de tener instalados zenity y curl con el siguiente comando:
sudo apt install zenity curl
- Crear el Script de Optimización
Cree un script en bash, guardándolo en la ubicación /home/joan/.config/Thunar/custom actions/images/web_optimized.sh. Utilice el siguiente código:
#!/bin/bash guitool=zenity apitiny=poner_tu_clave_de_API exit_me(){ rm -rf ${tempdir} exit 1 } trap "exit_me 0" 0 1 2 5 15 LOCKFILE="/tmp/.${USER}-$(basename $0).lock" [[ -r $LOCKFILE ]] && PROCESS=$(cat $LOCKFILE) || PROCESS=" " if (ps -p $PROCESS) >/dev/null 2>&1 then echo "E: $(basename $0) is already running" $guitool --error --text="$(basename $0) is already running" exit 1 else rm -f $LOCKFILE echo $$ > $LOCKFILE fi # precache PROGRESS=0 NUMBER_OF_FILES="$#" let "INCREMENT=100/$NUMBER_OF_FILES" ( for f in "$@" do echo "$PROGRESS" file="$f" # precache dd if="$file" of=/dev/null 2>/dev/null # increment progress let "PROGRESS+=$INCREMENT" done ) | $guitool --progress --title "Precaching..." --percentage=0 --auto-close --auto-kill PROGRESS=0 NUMBER_OF_FILES="$#" let "INCREMENT=100/$NUMBER_OF_FILES" mkdir -p "imagenes_optimizadas" ( for f in "$@" do imagename=$(echo "$f" | cut -f 1 -d '.') imagetype=$(echo "$f" | cut -f 2 -d '.') outfile=$imagename"-web."$imagetype echo "$PROGRESS" file="$f" filename="${file##*/}" filenameraw="${filename%.*}" echo -e "# Optimizando: t ${filename}" Cfile=`curl https://api.tinify.com/shrink --user api:$apitiny --data-binary @"${f}" --dump-header /dev/stdout | awk -F "url" '{print $2}' | awk '{print substr($0, 4)}' | sed 's/"}}//'` curl ${Cfile} --user api:$apitiny --output "imagenes_optimizadas/""$outfile" let "PROGRESS+=$INCREMENT" done) | $guitool --progress --width=450 --title "Optimizando imagen..." --percentage=0 --auto-close --auto-kill #notify-send "Se han optmizado las imágenes"
Reemplace poner_tu_clave_de_API por su clave API. Guarde los cambios y otorgue permisos de ejecución al script:
chmod +x /home/joan/.config/Thunar/custom actions/images/web_optimized.sh
- Configurar una Acción Personalizada en Thunar
Configure una acción personalizada en Thunar para ejecutar el script siguiendo las instrucciones detalladas.
En la configuración básica de la acción personalizada, ingrese los siguientes parámetros:
- Nombre: Optimizar imagen Web
- Descripción: Optimizar imagen Web
- Orden: bash '/home/joan/.config/Thunar/custom actions/images/web_optimized.sh' %N
En la pestaña Condiciones de aparición, seleccione Archivos de imagen.
Uso del Script para Optimizar Imágenes
Seleccione las imágenes en Thunar, haga clic derecho y ejecute la acción personalizada Optimizar imagen web. El proceso comenzará y se creará un directorio imagenes_optimizadas con las imágenes optimizadas, listas para subir a la web.
La optimización de imágenes utilizando la API de Tinify es una herramienta poderosa y eficiente para mejorar el rendimiento de los sitios web. Este método no solo reduce el tamaño de las imágenes manteniendo la calidad, sino que también facilita su manejo mediante un script automatizado y una configuración personalizada en Thunar.
Fuente: https://tinypng.com/
Fuente: https://geekland.eu/como-optimizar-imagenes-para-la-web-con-tinify/