2016-12-06 11 views
1

specific hexa colorall opaque pixelsを変更することを目的として、PNG filesの束をImageMagickでバッチ変換したいと思います。画像を特定の色に変換する画像

I白色

に変換すべての不透明な画素が、私は、各コマンドが正常に行われ、バッチ処理なしで試みたが常にWITE画素ここでひとつの画像の

for f in *.png; do convert "$f" -colorspace Gray -auto-level "${file%%.png}_gray.png"; done 

結果を変換しようとしました。

どのようにして不透明ピクセルを#AAAに設定できますか?

ありがとうございます!

答えて

1

opaqueピクセルと言うときは、100%不透明度のピクセルまたは透明度がゼロ以外のピクセルを意味するかどうかはわかりません。

方法1

だから我々は透明サラウンドとさらにブルーサラウンドと青い正方形である。このイメージで起動した場合、:

enter image description here

その後、我々は非を作ることができます黄色-transparentピクセル:

convert image.png -fill yellow -colorize 100% result.png 

enter image description here

黄の代わりに「#AAA」を使用します。

方法2

それについて考える別の方法は10/16に、各RGB画素を設定することである、すなわち進スケールでA:

convert image.png -channel RGB -fx '10/16' result.png 

enter image description here

方法3

もしかすると、あなたがwこのi番目 - 赤のボーダーと黒の上部に透明の勾配である:

enter image description here

その後、あなたがここに示されている(#AAAになるために、すべての(上部付近に)完全に透明なピクセルを除きたいです)の代わりに黄色:あなたの答えのための

convert start.png -channel A -threshold 1 -channel RGB -fill yellow -colorize 100% result.png 

enter image description here

+0

おかげで、私の目的は、無効な状態にいくつかのアイコンのPNGファイルを変換することです(つまり、なぜ灰色だ)ので、私は希望ので、あなたの答えは完璧だと思います完全に逃げるためにarencyピクセル透明に、#AAAカラーには他の色! –

+0

私は 'convert image.png -fill 'を使用しました。#AAA' -colorize 100%inactive/image_inactive.png'は私が必要としたことをやってくれました。 –

関連する問題