Como redimensionar imagens inteligentemente
6 de Julho de 2012, 0:00 - sem comentários ainda | Ninguém está seguindo este artigo ainda.
Visualizado 108 vezes
Ontem precisei redimensionar algumas fotos, umas 100, para não precisar fazer cada uma delas separadamente busquei uma solução que automatizasse o processo.
Aí vai...
Requisito: ImageMagick (instalado)
A ideia era redimensionar imagens grandes para:
- que coubessem num determinado tamanho (5MB);
- manter a proporcionalidade (aspect ratio);
- manter qualidade.
Posicionado no diretório que continha as imagens criei uma pasta com o nome "re" (redimensionadas).
Usei os comandos abaixo:
$ for i in *.jpg; do echo "$i"; convert "$i" -resize 2800x\> re/"$i"; done
$ for i in *.jpg; do echo "$i"; convert "$i" -resize x2800\> re/"$i"; done
OBS1: perceba o "2800x\>" no comando. Seguindo as orientações de "Jack", vamos por partes:
- 2800 é o tamanho desejado como largura (width);
- x sem uma indicação de tamanho a seguir significa que vai manter a proporcionalidade;
- \ é um mero caracter de escape;
- o sinal de maior (>) indica que somente as imagens maiores serão redimensionadas até este tamanho, ou seja, não vai aumentar as imagens menores para este tamanho.
OBS2: o segundo comando é basicamente o mesmo exceto que se aplica a imagens em formato retrato, ou seja aplica o tamanho na altura (heigh).
OBS3: altere o 2800 para o tamanho desejado.
OBS4: durante as pesquisas encontrei outras formas de fazer a mesma coisa, mas não testei, mesmo assim seguem os comandos.
- Redimensionar para um porcentagem específica:
$ mogrify -resize 90% -format jpg *
- Redimensionar para um tamanho específico:
$ mogrify -resize 1024x800 -format jpg *
- Especificar nível de compressão:
$ convert howtogeek.png -quality 95 howtogeek.jpg
O númeero deve estar entre 1 e 100. O default é 92.
PRONTO!
0sem comentários ainda