Otimizar imagens. O resultado esperado disso é um só: tornar imagens o mais compactas possível evitando prejudicar a qualidade. Independente da ferramenta que você está acostumado a usar, é isso que você quer no final. Mas que mal há em fazer isso do jeito simples, num tapa só?

Na web existemduas grandes categorias de imagens que merecem atenção: PNG e JPEG. Para cada uma delas, há uma ferramenta: OptiPNG e Jpegoptim.

Abra o terminal, vá para um diretório que conteha muitas imagens que precisem de carinho e faça a mágica acontecer. Não esqueça de anotar os tamanho das imagens antes de otimizá-las pra você poder medir o quanto ganhou sem nenhum esforço.

Se as imagens são PNG:

find . -name "*.png" | xargs optipng -clobber -o7 -zm1-9

Se as imagens são JPEG:

find . -name "*.jpg" | xargs -- jpegoptim -m75 -t -s --all-progressive -o

Traduzindo:

  1. O find procura e retorna todos os arquivos de imagens (png ou jpg) que estejam no diretório atual (.) e abaixo dele (subdiretórios).
  2. O | (pipe) envia a saída do find (uma lista de arquivos) para o xargs.
  3. xargs é um construtor de comandos a partir da saída de alguma coisa (a saída do find, no caso).
  4. O resto são os comandinhos espremedores de imagens.

Apenas note o seguinte: em ambos os casos, as imagens originais serão sobrescritas. Isso é dito pelo argumento -clobber no OptiPNG e pelo -o no Jpegoptim. No caso do Jpegoptim, há perda de qualidade por causa do -m75, mas é pouquinho. Se não gostar, aumente para 85.

Quer saber mais sobre os argumentos usados e muito mais? Be my guest!

man jpegoptim && man optipn