透明ピクセルを含むフォルダ内のすべてのPNGファイルを見つける方法はありますか?

透明ピクセルを含むフォルダ内のすべてのPNGファイルを見つける方法はありますか?

私は何千ものPNGを持っており、すべてアルファチャンネルをサポートできますが、実際にはそれらのうちのいくつかだけを使用します(そのうちのいくつかだけが実際に透明なピクセルを持っています)。

これらのファイルをすばやく見つける方法はありますか?

ベストアンサー1

netpbmの使用:

pngtopnm -alpha filename.png | pgmhist

値「0」で始まる行がある場合、画像は完全に透明なピクセルを含む。

「255」以外の数値行がある場合は、画像に部分的に透明なピクセルが含まれています。

したがって、forループに入れてください。

for file in *.[pP][Nn][Gg] 
do
  pngtopnm -alpha -- "$file" | pgmhist | grep -q '^ *0 ' && echo "$file" contains transparent pixels.
done

おすすめ記事