O convert é um pequeno utilitário que permite converter o formato de da imagem de forma bem simples, além de umas 200 outras tarefas. É, possivelmente, dos utilitários do ImageMagick o mais útil (sem diminuir a importância e a utilidade dos utilitários).
Para uma simples conversão de formatos, experimente:
convert img_original.jpg img_novoformato.png
Ele permite modificar o tamanho do arquivo.
Para dimuir a imagem a 60% do tamanho original, utilizamos:
convert img_original.jpg -resize 60% img_reduzida.png
Também é possível aumentar o tamanho da imagem.
Para aumentar a imagem original em 20% do seu tamanho, temos:
convert img_original.jpg -resize 120% img_ampliada.png
Assim como também é possível especificar um tamanho absoluto para a figura:
convert img_original.jpg -resize 640x480 img_novotamanho.png
O convert também permite criar imagens com base em contextos, tipo frases e/ou palavras, um exemplo vindo do próprio manual do convert é:
convert -size 320x85 xc:transparent -font Bookman-DemiItalic -pointsize 72 -draw "text 25,60 'Magick'" -channel RGBA \
-gaussian 0x6 -fill darkred -stroke magenta -draw "text 20,55 'Magick'" fuzzy-magick.png
O comando acima cria uma imagem chamada "fuzzy-magick.png" com o canal de cores RGBA (opção -channel), com o texto 'Magick' (opção -draw), escrito com a fonte 'Bookman-DemiItalic'.
Observe que o comando possui duas chamadas de -draw figuras, uma dentro da outra escrito o mesmo texto, mas as opções do -draw para o texto diferenciam o tamanho e posição do texto. O primeiro -draw produz o efeito "sombra" e o segundo -draw é preenchido com a cor 'darkred' e com o contorno na cor 'magenta'. A figura é transparente (xc:transparent) e possui o tamanho 320x85 (-size)
Outras utilidades do convert:
- Para equalizar ou normalizar as imagens:
convert -equalize img_orig.jpg img_equal.jpg
convert -normalize img_orig.jpg img_equal.jpg
- Para modificar o padrão de compressão (o default é 75%):
convert -quality 90 img.png img-90.jpg
- Para especificar o tipo de conversão:
convert -compress JPEG img.png img.new
Note nesse último exemplo que .new não é uma extensão conhecida, logo, para realizar a conversão é preciso especificar corretamente qual é o tipo do arquivo de saída. A opção -compress tem prioridade sobre a extensão do arquivo de saída, exemplo: convert -compress JPEG img.png img.bmp, gera um arquivo chamado img.bmp que na verdade é um jpeg de extensão trocada.
- Para criar um PDF com base em diversas imagens:
convert img_01.jpg img_02.jpg ... img_N.jpg arquivo.pdf
- Convertendo todas as imagens em lote (exemplo> png -> jgp) :
find ./ -name '*.png' -exec convert -quality 90 '{}' '{}'.jpg \;
O comando converte possuí exatamente 180 opções, logo é de se imaginar o poder desse pequeno utilitário.
Ainda assim, o uso mais comum desse utilitário é sua capacidade de converter o formato das figuras e de redimensioná-las.
Além disso, eu considero a forma mais fácil de criar uma figura com texto apenas. Experimente, por exemplo, substituir o 'Magick' do exemplo anterior por 'Ubuntu' e você acaba de criar um logo do Ubuntu. Ao mudar a fonte e acertar as cores é possível recriar o banner oficial do ubuntu (sem o logo, claro) com grande facilidade.
Excelente dica, postei no meu blog uma dica com base na sua, obviamente dando os devidos créditos. Hoje tive que manipular uma porção de fotos e sua dica me quebrou um galho enorme.
ReplyDeleteBoa !
ReplyDeleteÉ sempre muito bom ver trabalhos gerando frutos.
[]'s
Para converter imagens em lote, o comando mostrado no link abaixo funcionou muito mais rápido:
ReplyDeletehttp://lifehacker.com/342308/batch-convert-images-with-image-magick
Estou fazendo um trabalho em Linux sobre o comando convert e passei por aqui. Espero que tudo dê certo. THANKS!
ReplyDelete