本文简要介绍convert命令的基本使用,ImageMagick的convert工具的功能非常强大,可以实现多种图片处理功能。
![](https://img.haomeiwen.com/i7288149/259ec3810067858a.png)
本文测试图片如下(源于网络):
![](https://img.haomeiwen.com/i7288149/cedd46fe3ce5afd1.png)
一、获取图片尺寸
同样使用linux下的identify命令:
identify ABCD.png
输出: ABCD.png PNG 339x362 339x362+0+0 8-bit DirectClass 76.2kb
说明:图片ABCD.png的格式为PNG,宽、高分别为339和362,位深度8-bit,大小76.2kb;下文主要涉及宽、高的信息。
二、图片压缩
设置高度限制为60, 宽高比例不变,使用convert的 -resize 参数
convert ABCD.png -resize x60 ABCD_t1.png
![](https://img.haomeiwen.com/i7288149/7215c2b107db20da.png)
查看压缩后的图片:
ABCD_t1.png PNG 56x60 56x60+0+0 8-bit DirectClass 4.7kb
三、截图
借助convert的 -crop 参数
convert 输入.png -crop wxh+dx+dy 输出.png
其中: w为截取的宽;h为截取的高;dx、dy分别是开始截取的偏移位置,以左上角为原点
例如: convert ABCD.png -crop 300x200+10+10 ABCD_t2.png
可见,截图是自上而下、自左向右的;宽度(稍微截了一点)和高度(明显截短)(原图:339x362)均进行了截取,如下图:
![](https://img.haomeiwen.com/i7288149/0cf54ede7960a898.png)
四、拼图
(1)横向拼接
convert 1.png 2.png n.png +append merge.png (支持多个)
例如:把ABCD.png 和 ABCD_t2.png拼接起来
![](https://img.haomeiwen.com/i7288149/1d9b62858342fc4d.png)
(2)纵向拼接
convert 1.png 2.png n.png -append merge.jpg
把ABCD.png 和 ABCD_t3.png进行纵向拼接起来
![](https://img.haomeiwen.com/i7288149/e1d378a364c1720f.png)
五、添加文字
convert ABCD.png -fill red -pointsize 20 -annotate +150+120 HELLO text.png
在原图片上150x120位置上添加大小为20的红色文字:HELLO
![](https://img.haomeiwen.com/i7288149/242480a164c155d8.png)
六、格式转换
可以在PNG、PDF、JPG、TIFF等众多格式见相互转换
例如: convert ABCD.png ABCD.pdf
批量转换:for file in *.png; do convert $file ${file%%.*}.jpg; done
![](https://img.haomeiwen.com/i7288149/a70b98a5d7d754d8.png)
参考资料
[1] http://www.imagemagick.com.cn/
[2] http://www.imagemagick.org/script/index.php
网友评论