Salve,

Estou num projeto, na parte de otimização de frontend e backend para ter uma melhora na performance e outras coisinhas mais. Um dos itens do YSlow, PageSpeed, WebPageTest e qualquer outro sobre otimização de frontend é: Otimizar imagens.

O melhor link sobre práticas de otimização de frontend está no  Best Practices for Speeding Up Your Web Site, do Yahoo! Developer: http://developer.yahoo.com/performance/rules.html

Eles usam/indicam os:

  • pngcrush – para otmização de PNG
  • jpegtran – para otimização de JPEG
  • imagemagick – para otimização de GIF

Para instalar esses no Ubuntu:

PNGCrush

Você pode simplesmente dá:

sudo aptitude install pngcrush

Mas ele instala uma versão mais antiga, a nova é somente:

  1. Baixar o pngcrush aqui: http://pmt.sourceforge.net/pngcrush/]
  2. Descompactar: unzip pngcrush-1.7.9.zip
  3. Entrar na pasta: cd pcr010709/
  4. Executar: make
  5. Executar depois: make install
  6. Teste: ./pngcrush -version
  7. Mova para a pasta /usr/bin/: sudo mv pngcrush /usr/bin/
  8. Corra para o abraço :D

Fácil né?

Usando: pngcrush -rem alla -reduce -brute image.png image_output.png ( comando errado, desculpe pngcrush image.png -rem alla -reduce -brute result.png )

JPEGTRAN

Essa está difícil. Tentei instalar a libjpeg8 do http://www.ijg.org/ mas não consegui, tive que instalar a 6b. Depois eu continua procurando a última versão.

Vamos instalar:

  1. Procure por jpegsrc.v6b.tar.gz
  2. Eu achei aqui: http://dir.filewatcher.com/d/GNU/Other/jpegsrc.v6b.tar.gz.613261.html
  3. Faça o download
  4. Entre na pasta: cd jpeg-6b/
  5. Configure: ./configure
  6. Execute: sudo make install
  7. Verifique: jpegtran -h
  8. Essa não precisa mover, já coloca lá automático
  9. Corra para o abraço :)

Facim! Facim!

Usando:  jpegtran -copy none -optimize -outfile image_output.jpg  image.jpg ( comando errado, desculpe jpegtran -copy none -optimize -perfect src.jpg dest.jpg )

Agora volte para o Best Practices for Speeding Up Your Web Site, do Yahoo! Developer ( http://developer.yahoo.com/performance/rules.html ) e comece a trabalhar na melhora da performance do frontend.

* Estou fazendo testes com ferramentas, seguindos dicas e postarei mais sobre isso. Desde já procure: Firebug, YSlow, PageSpeed, WebPageTest e vá se divertindo.

Valeu!