converta bmp para png transparente

1

Eu tenho muitas imagens bmp como estas:

Issoeuprecisoconverteremarquivospngtransparentescomo:

basicamente, a cor azul (# 00FFFF) precisa ficar transparente e a cor roxa (FF00FF) precisa se tornar cinza (# 747474).

Os arquivos BMP são realmente antigos com uma profundidade de cor de 8 bits, eles são originalmente do jogo "Heroes 3", estou tentando portar este jogo para webgl, mas os sprites são atualmente o meu maior problema.

Encontrei este tópico original qual imagemagick foi recomendado, no entanto eu não consigo descobrir como converter arquivos em lote em janelas usando o imagemagick, nem como eu transformaria a cor roxa no bmp para o valor cinza real na png transparente.

Eu realmente gostaria de alguns conselhos sobre isso ou um exemplo do que a linha de prompt de comando do Windows precisaria ser para converter arquivos em lote com o imagemagick.

    
por xorinzor 27.11.2014 / 19:25

1 resposta

2

O mogrify do Imagemagick pode fazer isso.

Seu original (eu converti para BMP como era PNG no SuperUser)

mogrify-formatpng-transparent#00ffff*bmp

Você também pode converter cores ao mesmo tempo

mogrify -format png -fill grey -opaque #FF00FF -transparent #00ffff *bmp

Asombradasuaimagemtemumabordacomsuavizaçãodeserrilhadousandocorescomo#FF96FF,queprovavelmenteprecisamsermescladasnoplanodefundotransparenteounasombra.Vocêpodeusaraopção-fuzz

mogrify-formatpng-fuzz80%-fillgrey-opaque#FF00FF^-transparent#00ffff*bmp

Observe que no Microsoft Windows, mogrify não é um comando separado. Você tem que usar o comando magick como um prefixo como este: magick mogrify ...

    
por 27.11.2014 / 22:45