Como posso alterar o tamanho do arquivo de uma imagem?

14

De vez em quando, tento fazer upload de uma imagem para um site e encontrar uma mensagem:

Falha no upload: o tamanho do arquivo não pode exceder n MB!

Eu sei que o redimensionamento da dimensão da imagem deve ficar abaixo de n em um determinado momento, mas o processo de redimensionar, salvar e verificar o tamanho do arquivo é complicado. Além disso, às vezes pode ser útil manter as dimensões atuais.

Estou procurando uma maneira de alterar o tamanho do arquivo de uma imagem, de preferência do terminal. Existe uma maneira de fazer isso?

Exeleração-G
fonte
Você também pode tentar jpegoptimqual é uma linha de comando para otimizar jpegs. Em geral, eu iria pensar sobre qualquer redimensionamento ou comprimindo ou uma combinação de ambos, se seu alvo é reduzir o tamanho do arquivo
dufte
Você pode usar outro tipo de compactação, .jpg, em vez de .png. O ImageMagick ( imagemagick.org ) possui uma linha de comando com uma interface gráfica básica
Pit
O ImageMagick possui uma opção que permite definir o tamanho do arquivo ( imagemagick.org/Usage/formats/#jpg_write ), infelizmente apenas para jpg(semelhante a jpegoptim). Citação: 'Ele funciona gerando muitas versões da imagem JPEG, fazendo uma pesquisa binária, da configuração "qualidade" de qualidade de saída, até chegar o mais próximo possível do tamanho do arquivo fornecido sem excedê-lo "(citação final). Talvez você possa escrever um script que imite esse comportamento para outros formatos.
Marijn

Respostas:

22

jpegoptim

Primeira instalação jpegoptimvia

sudo apt install jpegoptim

Em seguida, tente otimizar o tamanho do arquivo da sua imagem via

jpegoptim /path/to/image.jpg

ou se você precisar de um tamanho definido via

jpegoptim --size=512k /path/to/image.jpg

Isso substituirá a imagem - para garantir que você tenha um backup durante o teste jpegoptim.

mogrificar (imagemagick)

Redimensionando

Você também pode usar o mogrifyque faz parte imagemagick. O exemplo a seguir reduz as dimensões da imagem para 50% (redimensionando - sem compactar)

mogrify -resize 50% /path/to/image.jpg

Compressing

O exemplo a seguir mostra a compactação com mogrify:

mogrify -compress JPEG -quality 50 /path/to/image.jpg

converter (imagemagick)

Compressing

A compactação para 80% usando o convert funciona da seguinte maneira:

convert -quality 80% /path/to/source/image.jpg /path/to/result/image.jpg

Converta sons com um enorme conjunto de opções, para que você possa usar

convert -strip -interlace Plane -gaussian-blur 0.05 -quality 85% /path/to/source/image.jpg /path/to/result/image.jpg

que de acordo com este post :

  • defina a qualidade para 85
  • progressivo (compressão confirmada)
  • um borrão gausssiano muito pequeno para otimizar o tamanho (0,05 ou 0,5 de raio) depende da qualidade e tamanho da imagem; isso otimiza notavelmente o tamanho do jpeg.
  • Retire qualquer comentário ou tag exif

imagem

Estou citando a página do projeto aqui

O Trimage é uma GUI de plataforma cruzada e uma interface de linha de comando para otimizar arquivos de imagem para sites, usando optipng, pngcrush, advpng e jpegoptim, dependendo do tipo de arquivo (atualmente, os arquivos PNG e JPG são suportados).

Você pode simplesmente instalá-lo via

sudo apt install trimage

Depois de iniciar apenas com o nome do aplicativo, você poderá ver a interface do usuário

insira a descrição da imagem aqui

Se precisar de mais informações sobre a imagem, visite a página do projeto ou execute trimage -hpara dar uma olhada na ajuda.

Outras ferramentas

Não é assim optipng, pngcrush, jpegtrane várias outras ferramentas na imagem no tamanho-otimização-canto .... mas eu nunca usei-los.

Vou terminar com alguns links

dufte
fonte