Back to MacOS

ImageMagick

http://www.imagemagick.org/image/wizard.jpg

ImageMagick是一个免费的创建、编辑、合成图片的软件。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。

ImageMagick是免费软件:全部源码开放,可以自由使用,复制,修改,发布,它遵守GPL许可协议,可以运行于大多数的操作系统,ImageMagick的大多数功能的使用都来源于命令行工具。

1. Features and Capabilities

跨平台的命令行工具

  1. 将图片从一个格式转换到另一个格式,包括直接转换成图标;
  2. 改变尺寸、旋转、锐化(sharpen)、减色、图片特效;
  3. 缩略图片的合成图( a montage of image thumbnails);
  4. 适于web的背景透明的图片;
  5. 将一组图片作成gif动画,直接convert;
  6. 将几张图片作成一张组合图片,montage;
  7. 在一个图片上写字或画图形,带文字阴影和边框渲染;
  8. 给图片加边框或框架;
  9. 取得一些图片的特性信息;
  10. 几乎包括了gimp可以作到的常规插件功能;

2. Command Line

2.1. identify

http://www.imagemagick.org/script/identify.php: 显示图片属性

➜  image identify cloud.jpg 
mobike.jpg JPEG 3264x2448 3264x2448+0+0 8-bit sRGB 2.782MB 0.000u 0:00.000
➜  image identify -verbose cloud.jpg 
Image: cloud.jpg
  Format: JPEG (Joint Photographic Experts Group JFIF format)
  Mime type: image/jpeg
  Class: DirectClass
...

2.2. convert

http://www.imagemagick.org/script/convert.php

## change type
convert *.jpg images.gif
##change size
➜  image convert -size 640x480 -depth 8 rgb:image image.png
➜  image convert merge.jpg -resize 50% merge50.jpg
2016 convert LT1.jpg -resize 640 LT1.jpg
2016 identify LT1.jpg
LT1.jpg JPEG 640x471 640x471+0+0 8-bit sRGB 196KB 0.000u 0:00.000

2.2.1. convert -resize

http://www.imagemagick.org/script/command-line-options.php#resize

## -resize width[xheight][+offset]
## -resize n%
➜  image convert image.jpg -resize 50% image_m.jpg
➜  image convert image.jpg -resize 20% image_s.jpg
➜  image identify image*                           
image.jpg JPEG 1200x900 1200x900+0+0 8-bit sRGB 593KB 0.000u 0:00.000
image_m.jpg JPEG 600x450 600x450+0+0 8-bit sRGB 189KB 0.000u 0:00.000
image_s.jpg JPEG 240x180 240x180+0+0 8-bit sRGB 49.7KB 0.000u 0:00.000

2.2.2. convert +/-append

## change type
convert *.jpg images.gif
##change size
➜  image convert -size 640x480 -depth 8 rgb:image image.png
➜  image convert merge.jpg -resize 50% merge50.jpg

2.2.3. convert +/-append

Montage Usage

##垂直合并
➜  image convert -append *.png out_vertical.jpg
➜  image convert -append -label %f [0-3].png out_vertical.jpg
##水平合并
➜  image convert +append -label %f [0-3].png out_horizontal.jpg

2.2.4. Unicode labels

http://www.imagemagick.org/Usage/text/#unicode

➜  /tmp  convert -background lightblue -fill blue -font "/Library/Fonts/Hanzipen.ttc" -pointsize 48 label:'帅呆了' cool.png

2.3. montage

Montage Usage: 蒙太奇,拼图和混合画

➜  image montage -label %f -geometry 100% *.png merge.jpg
➜  image montage -label %f -geometry +0+0 [0-3].png out_horizontal.jpg

2.4. display

需要XQuartz

http://www.imagemagick.org/script/display.php

# Install ImageMagick with X11 support
➜  ~ brew install imagemagick --with-x11
➜  ~ export DISPLAY=:0.0
# 显示图片
display foo.png
# 显示多个文件,你可以使用通配符
display *.png
# 幻灯片
display -delay 5 *

2.5. 高级合并

等宽垂直叠加效果:

图片等宽水平叠加效果:

3. 常用合成脚本

merge.py

https://github.com/twotwo/ci_scripts merge_img.py

4. Reference


CategorymacOS CategoryTool

MainWiki: ImageMagick (last edited 2016-08-12 16:34:04 by twotwo)