我的代码已经成功地单色化(制作黑白)图像,对于jpg和pngs现在已经有一段时间了。最近我注意到它不再适用于pngs。当我为png运行它时,我得到一个具有正确尺寸的空图像。对于jpg,我得到了正确的结果。
convert -density 150 -threshold '50'% -fuzz 1% -transparent white 'input.png' 'output.png'
我发现它的阈值不起作用,删除时图像不再是空白,但当然也不再是单色。
convert -density 150 -fuzz 1% -transparent white 'input.png' 'output.png'
我发现在运行之前将png转换为jpg会导致空白图像。
convert 'input.png' 'input.jpg'
convert -density 150 -threshold '50'% -fuzz 1% -transparent white 'input.jpg' 'output.png'
我也尝试按照评论中的建议重组命令,但仍然得到相同的结果。
convert 'input.png' -threshold '50'% -transparent white 'output.png'
我在没有ImageTragick安全修补程序的实例上对此进行了测试,并且没有出现此问题,因此我相信在更新ImageMagick时问题就出现了。我目前正在使用7.0.2-0。
导致此行为的原因是什么,以及如何使用ImageMagick 7.0.2-0转换为单色png图像?
更新:根据要求提供,这是我用于测试的众多png图片之一。
答案 0 :(得分:0)
在评论
中归功于MArk Setchell不确定发生了什么,但这样做是否符合要求?
convert buckeroos.png -threshold 50% -alpha off -transparent white output.png
也许我在escapeshellarg
和escapeshellcmd
上运行参数和命令,然后添加这些'打破它的标志。