melhor blog de tecnologia

é isso

sexta-feira, 4 de abril de 2014

Como redimensionar todas as imagens numa pasta ao mesmo tempo

Como redimensionar todas as imagens numa pasta ao mesmo tempo

Ainda tenho alguns clientes que me enviam pilhas de imagens para redimensionar e colocar nos seus sites.
 O meu CMS aceita drag'n'drop e também a hipótese de enviar um zip com as imagens todas ao mesmo tempo, mas torna-se chato usar o Gimp para redimensionar as imagens uma a uma.
 Nesta arena, a velha linha de comandos faz maravilhas.
 Para redimensionar automaticamente todas as imagens, crie um novo arquivo de texto, no leafpad por exemplo, ou até no nano, e cole isto:
mkdir -p resized
for image in *.{jpg,jpeg,png} ;
do
  [[ -f $image ]] && convert $image -colorspace RGB +sigmoidal-contrast 11.6933 -define filter:filter=Sinc -define filter:window=Jinc -define filter:lobes=3 -resize 850x650 -sigmoidal-contrast 11.6933 -colorspace sRGB ./resized/$image.jpg
done


Este script vai buscar todas as imagens do diretório onde se encontra, redimensiona-as para um máximo de 850 píxeis de largura e guarda-as em formato jpg num diretório local chamado "resized".
 Grave com um nome sugestivo, como websize, e mude as permissões para executável. Pode também alterar a resolução de saída que o script mantém obviamente a proporção da imagem. Se quiser gravar noutro formato, basta alterar a extensão de saída.
 Falta um último passo: mova o ficheiro para algum diretório onde tenha path, como /usr/bin:
sudo mv ./websize /usr/bin/
 OK. Agora qualquer diretório onde esteja na linha de comandos (o meu file manager é o PCManFm e basta pressionar a tecla F4 para abrir terminal) se executar websize vai redimensionar todas as suas imagens nesse diretório.
 Que tal? ;)

0 comentários:

Postar um comentário

Deixe aqui seu comentário: