linux系统下Imagemagick的convert图像处理常用命令详解
时间:2015-09-20 23:39 来源:linux.it.net.cn 作者:IT
convert是imagemagick软件包中的一个命令。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。这里介绍几个简单的命令,具体的用法请参考man手册或者其官方网站。在Ubuntu中用命令
1
sudo
apt-get
install
imagemagick(centos的yum 一下就OK了)
Convert的resize命令:
Convert的resize子命令应该是在ImageMagick中使用较多的命令,它实现了图片任意大小的缩放,唯一需要掌握的就是如何使用它的一些参数测试设定值:
此说明文件中所用的原始文件(src.jpg),宽度:200,高度:150
命令格式: -resize widthxheight{%} {@} {!} {<} {>} {^}
1. 默认时,宽度和高度表示要最终需要转换图像的最大尺寸,同时Convert会控制图片的宽和高,保证图片按比例进行缩放。
如:convert -resize 600×600 src.jpg dst.jpg
转换后的dst.jpg的图片大小(宽度为600,而高度已经按比例调整为450).
2.如果需要转换成600×600,而图片无需保持原有比例,可以在宽高后面加上一个感叹号!.
如:convert -resize 600×600! src.jpg dst.jpg
3. 只指定高度,图片会转换成指定的高度值,而宽度会按原始图片比例进行转换。
如:convert -resize 400 src.jpg dst.jpg
转换后的dst.jpg的图片大小(宽度为400,而高度已经按比例调整为300),和例1有点类似。
4. 默认都是使用像素作为单位,也可以使用百分比来形象图片的缩放。
如:convert -resize 50%x100%! src.jpg dst.jpg 或者convert -resize 50%x100% src.jpg dst.jpg
此参数只会按你的比例计算后缩放,不保持原有比例。(结果尺寸为100×150)
5.使用 @ 来制定图片的像素个数。
如:convert -resize “10000@” src.jpg dst.jpg
此命令执行后,dst.jpg图片大小为(115×86),图片保持原有比例(115×86= 9080 < 10000)。
6.当原始文件大于指定的宽高时,才进行图片放大缩小,可使用>命令后缀。
如:convert -resize “100×50>” src.jpg dst.jpg
此命令执行后,dst.jpg图片大小为(67×50),图片保持原有比例。
如:convert -resize “100×50>!” src.jpg dst.jpg
此命令执行后,dst.jpg图片大小为(100×50),图片不保持原有比例。
7.当原始文件小于指定的宽高时,才进行图片放大转换,可使用<命令后缀。
如:convert -resize “100×500<” src.jpg dst.jpg 或者convert -resize “100×100
此命令执行后,dst.jpg和src.jpg大小相同,因为原始图片宽比100大。
如:convert -resize “600×600<” src.jpg dst.jpg
此命令执行后,dst.jpg图片大小为(600×450),图片保持原有比例。
如:convert -resize “600×600
此命令执行后,dst.jpg图片大小为(600×600),图片不保持原有比例。
8.使用^命令后缀可以使用宽高中较小的那个值作为尺寸
如:convert -resize “300×300^” src.jpg dst.jpg
此命令执行后,dst.jpg图片大小为(400×300),图片保持原有比例,(300:300 < 200:150,选择高作为最小尺寸)。
如:convert -resize “300×200^” src.jpg dst.jpg
此命令执行后,dst.jpg图片大小为(300×225),图片保持原有比例,(300:200 > 200:150,选择宽作为最小尺寸)。
Convert的quality 命令:
1
convert -resize -quality 50 1405407568-633.jpg 800.jpg
Convert的sample命令 生成250x250缩略图:
convert -sample 250x250 wgy.jpg sample.jpg
另外,你还可以加水印,就不再赘述了。命令行的强大之处还是在于其简洁、快速,更适用于批量处理。
附上一个简单的shell脚本,共大家修改和使用:
1
#! /bin/sh
2
for
i
in
`
ls
*.jpg`;
3
do
4
convert -resize 50%
"$i"
"${i%.jpg}.png"
;
5
done
(责任编辑:IT)
convert是imagemagick软件包中的一个命令。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。这里介绍几个简单的命令,具体的用法请参考man手册或者其官方网站。在Ubuntu中用命令
Convert的resize命令: Convert的resize子命令应该是在ImageMagick中使用较多的命令,它实现了图片任意大小的缩放,唯一需要掌握的就是如何使用它的一些参数测试设定值: 此说明文件中所用的原始文件(src.jpg),宽度:200,高度:150 命令格式: -resize widthxheight{%} {@} {!} {<} {>} {^} 1. 默认时,宽度和高度表示要最终需要转换图像的最大尺寸,同时Convert会控制图片的宽和高,保证图片按比例进行缩放。 如:convert -resize 600×600 src.jpg dst.jpg 转换后的dst.jpg的图片大小(宽度为600,而高度已经按比例调整为450). 2.如果需要转换成600×600,而图片无需保持原有比例,可以在宽高后面加上一个感叹号!. 如:convert -resize 600×600! src.jpg dst.jpg 3. 只指定高度,图片会转换成指定的高度值,而宽度会按原始图片比例进行转换。 如:convert -resize 400 src.jpg dst.jpg 转换后的dst.jpg的图片大小(宽度为400,而高度已经按比例调整为300),和例1有点类似。 4. 默认都是使用像素作为单位,也可以使用百分比来形象图片的缩放。 如:convert -resize 50%x100%! src.jpg dst.jpg 或者convert -resize 50%x100% src.jpg dst.jpg 此参数只会按你的比例计算后缩放,不保持原有比例。(结果尺寸为100×150) 5.使用 @ 来制定图片的像素个数。 如:convert -resize “10000@” src.jpg dst.jpg 此命令执行后,dst.jpg图片大小为(115×86),图片保持原有比例(115×86= 9080 < 10000)。 6.当原始文件大于指定的宽高时,才进行图片放大缩小,可使用>命令后缀。 如:convert -resize “100×50>” src.jpg dst.jpg 此命令执行后,dst.jpg图片大小为(67×50),图片保持原有比例。 如:convert -resize “100×50>!” src.jpg dst.jpg 此命令执行后,dst.jpg图片大小为(100×50),图片不保持原有比例。 7.当原始文件小于指定的宽高时,才进行图片放大转换,可使用<命令后缀。 如:convert -resize “100×500<” src.jpg dst.jpg 或者convert -resize “100×100 此命令执行后,dst.jpg和src.jpg大小相同,因为原始图片宽比100大。 如:convert -resize “600×600<” src.jpg dst.jpg 此命令执行后,dst.jpg图片大小为(600×450),图片保持原有比例。 如:convert -resize “600×600 此命令执行后,dst.jpg图片大小为(600×600),图片不保持原有比例。 8.使用^命令后缀可以使用宽高中较小的那个值作为尺寸 如:convert -resize “300×300^” src.jpg dst.jpg 此命令执行后,dst.jpg图片大小为(400×300),图片保持原有比例,(300:300 < 200:150,选择高作为最小尺寸)。 如:convert -resize “300×200^” src.jpg dst.jpg 此命令执行后,dst.jpg图片大小为(300×225),图片保持原有比例,(300:200 > 200:150,选择宽作为最小尺寸)。 Convert的quality 命令:
Convert的sample命令 生成250x250缩略图: convert -sample 250x250 wgy.jpg sample.jpg 另外,你还可以加水印,就不再赘述了。命令行的强大之处还是在于其简洁、快速,更适用于批量处理。 附上一个简单的shell脚本,共大家修改和使用:
(责任编辑:IT) |