Pergunta

Eu tenho código da galeria de fotos que re-dimensiona a imagem e a criação de miniaturas. Eu uso o ImageMagick para fazer isso. Eu executei uma página da galeria pela ferramenta de velocidade da página do Google e ela revelou que as imagens e miniaturas re-tamanho têm cerca de 10kb de dados extras (arquivos jpeg especificamente).

O que posso adicionar aos meus scripts para otimizar o tamanho do arquivo?


INFORMAÇÃO ADICIONAL

Estou usando o imagick::FILTER_LANCZOS filtre com uma configuração de desfoque de 0.9 Ao ligar para o resizeImage() função. JPEGs têm uma configuração de qualidade de 80.

Foi útil?

Solução

Eu encontrei isso tão pergunta, "Ferramentas para otimização do JPEG?", Isso tem boas informações, mas as soluções estão fora do PHP. Usando dicas das soluções dessa pergunta, descobri que havia duas otimizações sem perdas que poderiam ser realizadas:

  1. Otimização das tabelas de codificação de Huffman
  2. Remoção de meta-dados (Exif, etc)

Ambos podem ser realizados com ImageMagick Por aqui:

  1. De acordo com Documentação ImageMagick, as tabelas de codificação ideais de Huffman são calculadas por padrão. Este passo já está resolvido, Yay!
  2. Remoção de META-DADA pode ser realizado muito simplesmente usando o StripImage () método.

Uma imagem que testei foi reduzida em 12kb. O arquivo 600x450 passou de 63,42kb para 51,42kb e a miniatura 140x105 passou de 17,98kb para 5,98kb.

Outras dicas

Execute suas imagens através do serviço Smushit do Yahoo, onde as imagens são convertidas em um PNG com um número exato de cores. Sem perda de qualidade, mas uma perda de peso :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top