Imagemagick:删除alpha分量(用实心像素替换所有中间alpha像素)

Pau*_*est 9 command-line imagemagick image-processing

要解决Android构建问题,我需要用实心像素替换所有中间alpha像素(保持透明背景).

如何使用ImageMagick或其他命令行工具对树中的所有图像?

图片bg_all_block.9.png

 bg_all_block.9.png

图片btn_bg_common_press.9.png

btn_bg_common_press.9.png

在此输入图像描述

更新:我发现我可以检测是否使用alpha,如使用ImageMagick检测Alpha通道

其他找到的链接

Mar*_*ell 46

要从单个图像中删除Alpha通道,请使用以下命令:

convert input.png -alpha off output.png
Run Code Online (Sandbox Code Playgroud)

要从文件夹内的所有图像中删除Alpha通道,请先使用find以查找所有PNG文件,然后运行"m through convert:

find . -name "*.png" -exec convert "{}" -alpha off "{}" \;
Run Code Online (Sandbox Code Playgroud)

请测试您的文件的COPY以确定.

...

看下面的对话框,答案是基于"我们需要删除不是255的alpha"

convert input.png -channel A -threshold 254 output.png
Run Code Online (Sandbox Code Playgroud)

并批量生产

mkdir batch
FOR %G IN (*.png) DO convert %G -channel A -threshold 254 batch\%G
Run Code Online (Sandbox Code Playgroud)

  • 但是这个有效:`convert input.png -background white -alpha remove -flatten -alpha off output.png` /sf/answers/1997400121/ (3认同)
  • 我没有做太多Windows,但它可能是'mogrify -alpha off*.png`.不确定`mogrify`是否有一个`-r`开关用于递归目录,或者它是否需要`*/*.png` (2认同)