Estava eu preparando um álbum de fotos no Flikr e precisei redimensionar fotos no linux, estas fotos eram do 1º Seminário de Software Livre TchêLinux Uruguaiana. A resolução original das fotos é 3.456 X 2.592 (sim eu sei, um absurdo), eu precisava deixar todas em 800×600. Cheguei a pensar em pesquisar algum plugin para o Dolphin (gerenciador de arquivos do KDE), algo parecido com o “nautilus-image-converter”, mas acabei lembrando do bom e velho convert em modo texto.

Bom chega de conversa e vamos ao que interessa 🙂

Redimensionando fotos no linux

Primeiramente, acesse o terminal e navegue até a pasta onde estão as fotos.

Recomendo criar uma pasta para receber as fotos redimensionadas:

$ mkdir novas

Agora, iremos converter nossas fotos, para isso, vamos utilizar um laço de repetição for em shell script.

$ for foto in *.jpg; do convert $foto -resize 800x600 novas/$foto; done

Onde:

  • foto = Variável para guardar o nome de cada foto;
  • convert = Programa utilizado para converter formatos, redimensionar, unir, etc, imagens;
  • -resize 800×600 = Tamanho para a nova resolução
  • novas/$foto = Caminho onde serão geradas as novas fotos, o $fotos é para manter o mesmo nome do original.

Resumindo, o laço será executado pegando o nome da foto encontrada e passando para a variável foto, após ele converte a foto encontrada de acordo com os parâmetros definidos, e posteriormente a salva no novo diretório sem alterar a original.

Maiores informações sobre as funcionalidades e opções de uso podem ser vistar no manual do comando convert.

$ man convert

Por hora era isso, que a força esteja com vocês.