我有很多图像,它们周围有白色边框。我想一次裁剪所有边界,最好是从命令行开始。我相信可以使用ImageMagick完成此操作,但是我找不到合适的命令。
我知道可以使用带有“自动裁剪边框”选项的名为Irfanview的Windows程序来完成此操作,但是我正在寻找基于Ubuntu的解决方案,最好是基于命令行的解决方案。
trim
与convert
或一起使用的命令行选项mogrify
可让您修剪与图像角相同颜色的边框。
用法:
convert input.png -trim output.png
附加选项-fuzz
(以百分比作为参数,例如-fuzz 10%
)也会删除边角颜色附近的颜色。使用该选项+repage
删除画布(如果适用)。
上面的ImageMagick Trimfind
命令在与命令结合使用时也可以用于批处理图像:
find ./ -name "pattern" -exec convert {} -trim outputfolder/{} \;
将修剪所有适合pattern
命令部分的图像,并将其保存在名为的新文件夹中outputfolder
。
假设图像是PNG,则命令将如下所示:
find ./ -name "*.png" -exec convert {} -trim outputfolder/{} \;
虽然find
可以更好地控制输出文件的放置位置,但也可以使用ImageMagick的方法进行相同的操作mogrify
:
mogrify -trim *.png
并且如果您想在角落颜色附近裁剪颜色(根据观察到的结果调整百分比):
mogrify -trim -fuzz 10% *.png
请注意,不像convert
与和批量操作find
和convert
mogrify将覆盖所有文件。要保留原件,请使用-path
选项或对目录中所有图像进行备份,然后再执行mogrify命令。
旁注:mogrify
可用于convert
批量执行大多数(如果不是全部)操作,同时覆盖原始文件。
正如Trevor在评论中指出的那样,您可以使用-path选项将转换后的文件输出到新目录,而不会覆盖原始文件:
mogrify -trim -path trimmed_folder/ *.png
IrfanView在Wine上运行得很好。请务必仔细检查Irfanview的输出,因为与Wine一起使用时,有时会破坏图像。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句