ImageMagick是一套用于修改和使用图像的命令行实用程序。 ImageMagick可以从终端快速执行对图像的操作,对许多图像执行批处理,或者集成到bash脚本中。
ImageMagick可以执行各种操作。 本指南将向您介绍ImageMagick的语法和基本操作,并向您介绍如何组合操作并对许多图像执行批处理。
安装
ImageMagick不包括在Ubuntu和许多其他Linux发行版的默认安装中。 要在Ubuntu上安装它,请使用以下命令:sudo apt-get install imagemagick
在格式之间转换
convert命令获取图像,对其执行操作,并使用您指定的文件名保存图像。 你可以做的最基本的事情之一是在格式之间转换图像。 以下命令使用当前目录中名为“howtoip.png”的PNG文件,并从中创建JPEG图像:转换howtoip.png howtoip.jpg
您还可以为JPEG图像指定压缩级别:convert howtoip.png -quality 95 howtoip.jpg
该数字必须在1到100之间。如果可能,ImageMagick使用输入图像的质量级别。 如果没有,ImageMagick默认为92。
调整图像大小
convert命令还可以快速调整图像大小。 以下命令要求ImageMagick将图像大小调整为200像素宽,100像素高:convert example.png -resize 200×100 example.png
我们在这里使用相同的文件名,因此ImageMagick将覆盖原始文件。
如果使用此命令,ImageMagick将尝试保留宽高比。 它将更改图像以适应200×100区域,但图像可能不是精确的200×100。 如果您想强制图像成为特定大小 - 即使它弄乱了长宽比 - 在尺寸上添加感叹号:convert example.png -resize 200×100! example.png
您还可以指定特定的宽度或高度,ImageMagick会将图像大小调整为该宽度或高度,同时保留宽高比。 以下命令将图像的宽度调整为200:convert example.png -resize 200 example.png
以下命令将图像大小调整为100的高度:convert example.png -resize x100 example.png
旋转图像
ImageMagick可以快速旋转图像。 以下命令采用名为howtoip.jpg的图像,将其旋转90度,并将旋转的图像保存为howtoip-rotated.jpg:转换howtoip.jpg -rotate 90 howtoip-rotated.jpg
如果指定了相同的文件名,ImageMagick会将旋转的图像保存在原始图像文件上。
应用效果
ImageMagick可以对图像应用各种效果。 例如,以下命令将“charcoal”效果应用于图像:转换howtoip.jpg -charcoal 2 howtoip-charcoal.jpg
charcoal命令对图像应用艺术“木炭”风格效果 - 命令中的2可以控制效果的强度。
以下命令将应用强度为1的“Implode”效果:转换howtoip.jpg -implode 1 howtoip-imploded.jpg
内爆效应使它看起来好像在图像的中心有一个黑洞。
组合操作
所有这些操作可以组合。 使用单个命令,您可以调整图像大小,旋转图像,应用效果,并将其转换为其他格式:convert howtoip.png -resize 400×400 -rotate 180-charcoal 4 -quality 95 howtoip.jpg
这只是你可以用ImageMagick做的开始。 还有更多的操作,你可以组合。
批量处理
您可以利用Bash快速批量处理许多图像。 例如,以下命令将占用当前目录中的所有PNG文件,旋转它们,并保存每个文件的新副本,并将“-rotated”添加到每个文件名的开头。用于* .png中的文件; do convert $ file -rotate 90 rotated- $ file; 完成
您可以轻松地修改此命令以执行其他操作。 您还可以将批处理命令成的Bash shell脚本来自动图像处理操作。
ImageMagick上的任何文章都会省略很多你可以做的事情 - 只有太多的选项和命令。 如果你有兴趣与ImageMagick的做更多的,请参阅官方ImageMagick的网站上的文档进行更为深入的看一看ImageMagick的。