巧用linux工具之convert简介

本文简要介绍convert命令的基本使用,ImageMagick的convert工具的功能非常强大,可以实现多种图片处理功能。

巧用linux工具之convert简介_第1张图片
ImageMagick的convert工具

本文测试图片如下(源于网络):

巧用linux工具之convert简介_第2张图片
ABCD.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

巧用linux工具之convert简介_第3张图片
ABCD_t1.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)均进行了截取,如下图:

巧用linux工具之convert简介_第4张图片
ABCD_t2.png


四、拼图

(1)横向拼接

 convert  1.png   2.png  n.png +append   merge.png (支持多个)

例如:把ABCD.png 和 ABCD_t2.png拼接起来

巧用linux工具之convert简介_第5张图片
横向合并

(2)纵向拼接

convert  1.png  2.png  n.png -append   merge.jpg

把ABCD.png 和 ABCD_t3.png进行纵向拼接起来


巧用linux工具之convert简介_第6张图片
纵向合并


五、添加文字

convert ABCD.png -fill red -pointsize 20 -annotate +150+120  HELLO  text.png

在原图片上150x120位置上添加大小为20的红色文字:HELLO

巧用linux工具之convert简介_第7张图片
添加文字


六、格式转换

可以在PNG、PDF、JPG、TIFF等众多格式见相互转换

例如: convert ABCD.png  ABCD.pdf

批量转换:for file in *.png; do convert $file ${file%%.*}.jpg; done


格式转换

参考资料

[1] http://www.imagemagick.com.cn/

[2] http://www.imagemagick.org/script/index.php

你可能感兴趣的:(巧用linux工具之convert简介)