Como manipular imagens no terminal Linux
Precisa cortar, redimensionar ou editar rapidamente uma imagem no Linux? Esqueça o carregamento de um aplicativo - use o terminal.
Já se cansou de abrir constantemente seu editor de imagens favorito para um simples corte, redimensionamento ou para alterar o formato do arquivo? Talvez você precise executar facilmente essas tarefas em lote ou dentro do software?
Veja como usar a ferramenta convert do Linux, que permite fazer tudo isso com o terminal por meio da linha de comando e muito mais.
Instalar o ImageMagick
A ferramenta convert faz parte do popular pacote imagemagick, que você precisa ter instalado. Verifique se o ImageMagick está ou não instalado com o comando:
convert --version
Se o número da versão do ImageMagick for exibido, ele já está instalado e você pode passar para a próxima seção. Caso contrário, instale o ImageMagick com o comando:
sudo apt-get -y install imagemagick
Obter informações de imagem
Você pode obter as informações básicas sobre qualquer imagem com o comando:
convert <FILENAME> -print "Type: %m\nSize: %b\nDimensions: %wx%h\n" /dev/null
Isso fornecerá o tipo mime da imagem, o tamanho do arquivo em KB e suas dimensões em pixels, e será semelhante a:
Type: jpeg
Size: 35.6KB
Dimensions: 640 x 480
Alterar formato de arquivo de imagem
Você pode alterar facilmente o formato de arquivo de qualquer imagem com:
convert <SOURCE_FILE> -append <DEST_FILE>
Este comando irá pegar o arquivo
Redimensionar uma imagem no Linux
Se você deseja redimensionar uma imagem ou talvez gerar uma miniatura rapidamente, pode fazê-lo com a opção -resize. Execute o seguinte comando:
convert -resize 25% <SOURCE_FILE> <DEST_FILE>
Isso redimensionará a imagem e criará um novo arquivo de imagem em DEST_FILE com 25% das dimensões da imagem de origem. Observe que o comando acima não reduz o tamanho em 25%, mas gera uma nova imagem com 25% do tamanho. Se precisar ampliar uma imagem, você pode ajustar a porcentagem para mais de 100%.
Em vez de redimensionar por porcentagem, você também pode especificar as dimensões específicas com o comando:
convert -resize 1024x768 profile.jpg profile_large2.jpg
O comando acima redimensionaria a imagem de origem para 1024x768 pixels e salvaria a nova imagem em DEST_FILE.
Cortar uma imagem
Se precisar tirar um pouco do topo ou dos lados, você pode recortar uma imagem com o seguinte comando:
convert <SOURCE_FILE> -crop 640x250+0+0 <DEST_FILE>
Por exemplo, se a imagem de origem tiver 640 x 480 pixels, o comando acima resultaria em DEST_FILE sendo uma imagem de 640 x 250 pixels contendo a metade superior da imagem enquanto a metade inferior foi cortada. O +0+0 no comando acima especifica o ponto mais à esquerda da imagem ou, em outras palavras, onde começar a recortar.
Usando o exemplo acima, você pode salvar a metade inferior da imagem com o comando:
convert <SOURCE_FILE> -crop 640x250+0+230 <DEST_FILE>
Isso iniciará o corte em 0x230 na imagem de origem, cortando a metade superior e deixando apenas a metade inferior.
Girar imagem
Você pode até girar imagens usando o comando:
convert <SOURCE_FILE> -rotate 90 <DEST_FILE>
O comando acima girará a imagem de origem em 90 graus no sentido horário e salvará a imagem resultante em DEST_FILE.
Adicionar legenda à imagem
Outro excelente recurso da ferramenta converter é a capacidade de adicionar legendas instantaneamente às imagens, incluindo onde colocar a legenda na imagem, além da família de fontes, tamanho e cor a serem usadas. Use o seguinte comando para adicionar uma legenda a uma imagem:
convert profile.jpg -pointsize 14 -font helvetica -fill yellow -draw 'text 270,160 "Warm Regards from the Family" ' profile_cap.jpg
O comando acima colocará uma legenda de "Atenciosamente da família" na imagem de origem usando a fonte Helvetica 14pt em amarelo, com o ponto superior esquerdo da imagem começando em 270x160 pixels e salvando os resultados em DEST_FILE.
Observe que você deve ter cuidado com a opção -draw, que deve começar entre aspas simples, seguida da localização do ponto mais à esquerda no canto superior esquerdo e, em seguida, do texto da legenda entre aspas duplas.
Existe uma lista enorme de cores disponíveis, e se desejar você pode listar todas as cores suportadas pelo seu computador com o comando:
cb:>showrgb
A seleção de fontes varia dependendo do seu computador, mas todas as fontes padrão geralmente usadas estarão lá. Cada sistema operacional é um pouco diferente, mas no Ubuntu, por exemplo, as fontes estão localizadas no diretório /usr/share/fonts e contém uma lista de todas as fontes de sistema disponíveis que você pode usar no comando acima .
Comandos de edição de imagem de combinação e combinação
Você pode misturar e combinar qualquer uma das opções acima em um único comando para maior eficiência. Por exemplo, se você tiver uma imagem grande na orientação errada, com tamanho de 2571x1200 pixels, e quiser gerar uma miniatura de 300x200, poderá usar o comando:
convert <SOURCE_FILE> -rotate 90 -crop 1200x800 -resize 25% <DEST_FILE>
O acima primeiro giraria a imagem em 90 graus, tornando o novo tamanho de 1200x2571 pixels. Em seguida, cortaria o excesso da parte inferior para apenas 800 pixels de altura e, finalmente, redimensionaria a imagem para 25% de seu tamanho original, resultando em uma miniatura final de 300x200 pixels de tamanho.
Processar em lote um diretório de imagens
Tem um diretório inteiro de imagens que deseja processar com o mesmo comando? Não é problema no Linux. Por exemplo, você pode querer gerar miniaturas de todas as imagens em seu diretório de trabalho atual, redimensionando-as para 30% do tamanho atual:
mkdir thumbs
for i in `ls | grep .jpg$`; do convert $i -resize 30% thumbs/$i; done
O comando acima irá passar por todos os arquivos em seu diretório atual que possuem uma extensão .jpg, redimensioná-los para 30% de seu tamanho e colocar as miniaturas resultantes no subdiretório /thumbs/.
Manipulação de imagem facilitada!
Com este tutorial, esperamos que você tenha tirado a capacidade de manipular imagens sem dor e sem esforço por meio do terminal e processar em lote facilmente um diretório inteiro com um único comando.
Você aprendeu o que é a ferramenta converter do ImageMagick, além de como alterar o formato do arquivo, redimensionar, cortar, girar e adicionar legendas às imagens com facilidade. Há também uma grande quantidade de funcionalidades adicionais disponíveis---tente a opção convert -help para obter uma lista completa.