Recientemente tuve la necesidad de cambiar el tamaño de varias imágenes tomadas con una cámara digital para poder enviarlas por correo, en Windows recuerdo haber utilizado Paint Shop Pro para algo similar (realizar las mismas modificaciones a un conjunto de imágenes). Es algo que no había hecho antes en Linux, así que busqué y encontré cuatro opciones :), las cuales muestro a continuación.
Nautilus Image Converter
http://freshmeat.net/projects/nautilus-image-converter/
Un script para nautilus, agrega las opciones “Resize image…” y “Rotate image…” al menú contextual (clic con el botón secundario) para todas las imágenes. Se encuentra en los repositorios de Ubuntu, por lo que para instalarlo basta con usar:
$ sudo aptitude install nautilus-image-converter
Probablemente sea necesario reiniciar la sesión para que el script esté activo.
Nautilus Image Script
http://www.creationgif.com/debian/nis/
Otro script para Nautilus, este no se encuentra en los repositorios de Ubuntu, es otra opción aunque no la probé :P.
Imagemagick: mogrify
También podemos hacer uso de Imagemagick, con el uso de los comandos mogrify o convert.
Primero debemos instalar imagemagick:
$ sudo aptitude install imagemagick
mogrify permite modificar un conjunto de imágenes, en el caso de las mías, suponiendo que mis imágenes tengan extensión JPG y se encuentren en el directorio /home/usuario/imágenes/fotos, creamos un nuevo directorio al que copiamos todas las fotos:
cd /home/usuario/imágenes/fotos
mkdir peques
cp * peques
Ahora, nos pasamos al directorio peques y ejecutamos mogrify para que redimensione todas las imágenes JPG a un ancho de 320, el alto lo determina automáticamente Imagemagick manteniendo la proporción :).
cd peques
mogrify -resize 320 *.JPG
Imagemagick: convert
El comando convert permite redimensionar una imagen mediante la siguiente sintaxis:
convert -resize 'anchoxalto' imagen_original nueva_imagen
Pero sólo trabaja con una imagen a la vez, así que para poder convertir un conjunto de imágenes, hacemos uso de un script 🙂
#!/bin/bash
for x in $(ls *.JPG); do
convert -resize '320x240' $x peque-$x
done
Este script lo colocamos en el directorio donde se encuentran las fotos, listará todos los archivos .JPG y creará una copia redimensionada a 320×240 agregando la palabra “peque” al nombre de la imagen :).
Espero sea de utilidad.
Dejar una contestacion