Coluna do Aurélio
ZGV/ImageMagick: manipulando imagens no modo texto
Olás. Continuando a saga da ambientalização no modo texto, mais uma tarefa importante: lidar com imagens.
Sim, pode parecer paradoxal mexer com imagens no modo texto, mas, se podemos, por que não fazê-lo?
Dois programas que estão presentes na maioria das distribuições de Linux são o zgv (www.svgalib.org/rus/zgv) para visualizar imagens e o ImageMagick (www.wizards.dupont.com/cristy/ImageMagick.html)
para manipulá-las. Eles serão nossos convidados do mês.
O zgv utiliza a SVGAlib, biblioteca genérica para programas de modo texto que precisam de recursos gráficos, suportando a maioria das placas de vídeo e monitores existentes. Ele mostra em tela cheia arquivos dos tipos JPG, GIF (inclusive animado), PNG, BMP, entre outros.
Entre num diretório que contenha algumas imagens e chame o zgv. Será apresentado um "navegador" para você escolher qual imagem quer ver. Para que o navegador gere miniaturas dessas imagens, aperte u. Ah! Em tempo, se apertar ? aparecerá uma tela de ajuda e o Esc é a tecla de saída &:)
Para ver um arquivo apenas, ou mesmo uma seleção, chame o zgv passando os nomes desses arquivos como parâmetro:
$ zgv imagem.jpg
$ zgv *.jpg *.gif
Assim, o programa entra
no modo de exibir "slides", alternando as imagens
a cada 4 segundos. Visualizando
uma imagem, temos vários comandos aplicáveis (? para ajuda), destacando-se controle de brilho e contraste (<>,.)
e zoom (z).
Como o zgv tem centenas de comandos e opções, uma leitura na sua página de manual on-line pode consumir horas. Os comandos acima são o supra-sumo, os que você mais vai utilizar. Outra dica é que pode ser criado um ~/.zgvrc com configurações diversas, como o tagtimeout 30, para aumentar o tempo entre cada slide.
Agora que sabemos como ver imagens, falta aprender como manipulá-las. O pacote ImageMagick conta com
vários programas e, apesar de sua página de manual dizer que ele é para X11, vários aplicativos de linha de comando o acompanham, como combine, identify, convert e montage, cada um com sua própria página de manual. A seguir, exemplos práticos para obter informações, converter imagens e criar GIFs animados:
$ identify imagem.jpg
$ convert -rotate 90 -antialias original.bmp convertida.jpg
$ convert -delay 50 -loop 0 foto1.jpg foto2.jpg animacao.gif
Basta chamar qualquer um dos programas citados com o help e ver a grande quantidade de opções que eles suportam. Tem de tudo: controle de cores, transparência, montagens, redimensionamento, alinhamento, animação, efeitos, compressão, gamma, entrelaçamento, etc. E tudo isso disparado pela linha de comando sem precisar ir para a interface gráfica, abrir o programa, carregar a imagem, procurar os efeitos desejados em menus, dezenas de cliques no mouse, salvar a imagem, fecha, abre a próxima, e assim vai...
Atenção webmasters, tratar fotos digitalizadas pode ser uma questão de segundos utilizando o convert! Ao manipular imagens no modo texto, é possível aplicar tratamentos padronizados em várias imagens, tornando a edição automática e poupando bastante o tempo do operador. E tudo isso sem nem mesmo precisar ver a imagem. Experimente!