示例一:综合操作(ImageMagick命令行)—————————————————————————-
1. convert -crop 300x300+0+0 -resize 200x200 -colors 100 +profile "*" 1.jpg 1.png
处理过程解释:
1、把当前目录1.jpg图片文件,从左上角(0,0)坐标为起点,裁剪一块300×300像素的部分。
2、然后把这部分缩小到200×200像素。
3、然后把颜色缩减到100色。
4、+profile “*” , 意味着在图片文件里不存储Exif信息,以减小图片体积。
5、最后生成1.png,保存在当前目录。
注意:-resize会试图保留原图的原始长宽比例,因此不一定生成的图片和你指定的尺寸一定匹配,比如,如果2.jpg大小是400×200,所以如果用命令:convert 2.jpg -resize 100×100 2.png,那么生成的图片2.png的实际大小是100×50。
常用的参数用途说明:
-crop 宽x高+起点横坐标+起点纵坐标:裁剪图
-resize 宽x高!:改变尺寸,**如果使用惊叹号,表示不保留视觉比例,强行改变尺寸匹配给定的宽和高**;如果仅给定宽或者高,如“宽x”或“x高”形式的参数(“x高”与“宽x高”的效果是一样的),则以已知参数为基准按比例改变尺寸。
-colors 颜色数:设定图片采用的颜色数,如果是生成png或gif图片应指定这个参数
-quality 质量:设定jpeg图片输出质量,推荐采用80,此命令仅用于输出格式是jpg的情况,不应省略,省略的话默认质量是95,生成图片过大
+profile "*":图片中不存储Exif信息,必须使用,否则生成图片过大
示例二:生成缩略图(缩小图片) (ImageMagick命令行)—————————————————————————-
- convert -sample 80×40 input.jpg output.jpg (使用一个简单的算法生成缩略图,速度快,画质较低,适合生成100×100以下的图片)
- convert -resize 100×100 foo.jpg thumbnail.jpg (画质好)
- convert -resize 50%x50% foo.jpg thumbnail.jpg
- convert -resize 100×200 22.jpg(图片路径) 11.jpg(缩放后存放路径) 图片按比例缩放
- convert -resize 100×200! 22.jpg(图片路径) 11.jpg(缩放后存放路径) 强制按给定的宽高缩放
示例三:裁剪图片(ImageMagick命令行)—————————————————————————-
- convert -crop 100(长)x200(高)+10(x坐标)+10(y坐标) 22.jpg(源图片路径) 11.jpg(缩放后存放路径)
示例四:旋转图像 (ImageMagick命令行)—————————————————————————-
- convert -rotate 90 input.jpg output.jpg
示例五:获取文件信息 (ImageMagick命令行)—————————————————————————-
- libtiff tiffinfo filename.tiff
示例六:把图片变为黑白颜色(ImageMagick命令行)—————————————————————————-
- convert -monochrome foo.png bar.png
添加图片水印处理(ImageMagick命令行)
假设把名为logo.gif的水印图标添加在原始图片(src.jpg)右下角,且水印的下边缘距原始图片10像素、右边缘距原始图片5像素。使用如下命令即可:
- convert src.jpg logo.gif -gravity southeast -geometry +5+10 -composite dest.jpg
**添加英文文字水印 **(ImageMagick命令行)
convert -fill white -pointsize 24 -draw “text 10,15 ‘lifesinger 2006’ ” 1.png 2.png
文字坐标在:10×50的位置
可以用-font指定字体,这时需要安装Ghostscript支持。
如果安装IM、GM时,没有安装Ghostscript字体,会默认使用Linux系统的字体,目录是:/usr/share/fonts/default/Type1/
添加中文文字水印 (ImageMagick命令行)
高版本的ImageMagick的方法
convert -font C:\ImageMagick\font\fangzheng.ttf -fill green -pointsize 40 -draw “text 10,50 ‘文字'” d:\bagImg\21.jpg d:\bagImg\22.jpg
参数说明: -font C:\ImageMagick\font\fangzheng.ttf 是指明Windows字体文件。
要高版本的ImageMagick同,在加中文文字水印时才不乱码。
高级应用##
//大小缩放
//比如我们要为一个普通大小的图片做一个缩略图,我们可以这样
convert -resize 100x100 foo.jpg thumbnail.jpg
//你也可以用百分比,这样显的更为直观:
convert -resize 50%x50% foo.jpg thumbnail.jpg
//convert会自动地考虑在缩放图像大小时图像的高宽的比例,也就是说着新的图像的高宽比与原图相同。
//我们还可以批量生成缩略图:
mogrify -sample 80x60 *.jpg
//注意,这个命令会覆盖原来的图片,不过你可以在操作前,先把你的图片备份一下。
///加边框
//在一张照片的四周加上边框,可以用 -mattecolor 参数,比如某位同志牺牲了,我们需要为他做一张黑边框的遗像,可以这样:
convert -mattecolor "#000000" -frame 60x60 yourname.jpg rememberyou.png
//其中,"#000000"是边框的颜色,边框的大小为60x60
///你也可以这样加边框:
convert -border 60x60 -bordercolor "#000000" yourname.jpg rememberyou.png
//在图片上加文字
convert -fill green -pointsize 40 -draw 'text 10,50 "charry.org"' foo.png bar.png
///上面的命令在距离图片的左上角10x50的位置,用绿色的字写下charry.org,如果你要指定别的字体,可以用-font参数。
//模糊
//高斯模糊:
convert -blur 80 foo.jpg foo.png
//-blur参数还可以这样-blur 80x5。后面的那个5表示的是Sigma的值,这个是图像术语,我也不太清楚,总之,它的值对模糊的效果起关键的作用。
//翻转
//上下翻转:
convert -flip foo.png bar.png
//左右翻转:
convert -flop foo.png bar.png
//反色
//形成底片的样子:
convert -negate foo.png bar.png
//单色
//把图片变为黑白颜色:
convert -monochrome foo.png bar.png
//加噪声
convert -noise 3 foo.png bar.png
//油画效果
//我们可用这个功能,把一张普通的图片,变成一张油画,效果非常的逼真
convert -paint 4 foo.png bar.png
//旋转
//把一张图片,旋转一定的角度:
convert -rotate 30 foo.png bar.png
//上面的30,表示向右旋转30度,如果要向左旋转,度数就是负数。
//炭笔效果
convert -charcoal 2 foo.png bar.png
//形成炭笔或者说是铅笔画的效果。
//散射
//毛玻璃效果:
convert -spread 30 foo.png bar.png
//漩涡
//以图片的中心作为参照,把图片扭转,形成漩涡的效果:
convert -swirl 67 foo.png bar.png
//凸起效果
//用-raise来创建凸边:
convert -raise 5x5 foo.png bar.png
一些命令
convert
转换图像格式和大小,模糊,裁剪,驱除污点,抖动,临近,图片上画图片,加入新图片,生成缩略图等。
identify
描述一个或较多图像文件的格式和特性。
mogrify
按规定尺寸制作一个图像,模糊,裁剪,抖动等。Mogrify改写最初的图像文件然后写到一个不同的图像文件。
composite
根据一个图片或多个图片组合生成图片。
montage
创建一些分开的要素图像。在含有要素图像任意的装饰图片,如边框、结构、图片名称等。
compare
在算术上和视觉上评估不同的图片及其它的改造图片。
display
如果你拥有一个X server的系统,它可以按次序的显示图片
animate
利用X server显示动画图片
import
在X server或任何可见的窗口上输出图片文件。 你可以捕获单一窗口,整个的荧屏或任何荧屏的矩形部分。