ImageMagick是一个用来创建、编辑、合成图片的软件。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。ImageMagick是免费软件:全部源码开放,可以自由使用,复制,修改,发布。支持大多数的操作系统。
具体请到官方网站查看:http://www.imagemagick.org
在安装 imagemagick 之前要 先确定服务器如果没有安装Jpeg v6b、libPng、FreeType库等,如果没有安装imagemagick读取不了图片 导致处理的图片出现问题。
安装jpeg包
下载地址:http://www.imdong.net/uplocal/soft/jpegsrc.v6b.tar.gz
# wget http://www.imdong.net/uplocal/soft/jpegsrc.v6b.tar.gz
# tar -zvxf jpegsrc.v6b.tar.gz
# cd jpeg-6b/
# ./configure
在配置信息是提示
checking for gcc... no
checking for cc... no
configure:error:no acceptable cc found in $PATH
意思是服务器没有安装gcc编辑器,使用yum命令进行安装
# yum install gcc gcc-c++ gcc-g77
然后重新 ./configure 继续安装
# make && make install
又出现一个错误
/usr/bin/install:cannot create regular file '/usr/local/man/man1/cjpeg.1':No such file or directory
找不到/usr/local/man/man1/ 这个目录
试了很多方法都失败 手动创建一下试试
# mkdir /usr/local/man
# mkdir /usr/local/man1
继续 make && make install
这次没有报错 安装成功
# cd
安装zlib包
下载地址:http://www.imdong.net/uplocal/soft/zlib-1.2.7.tar.gz
# wget http://www.imdong.net/uplocal/soft/zlib-1.2.7.tar.gz
# tar -zvxf zlib-1.2.7.tar.gz
# cd zlib-1.2.7/
# ./configure
# make && make install
这次很顺利直接安装成功
# cd
安装png包
下载地址:http://www.imdong.net/uplocal/soft/libpng-1.2.50.tar.gz
# wget http://www.imdong.net/uplocal/soft/libpng-1.2.50.tar.gz
# tar -zvxf libpng-1.2.50.tar.gz
# cd libpng-1.2.50/
# ./configure
# make && make install
这次也很顺利直接安装成功
# cd
注意:很多其他的教程在./configure之后 都会cp scripts/makefile.std makefile 将scripts/makefile.std 复制到当前目录 然后在编译(make)
测试了很多次 cp这一步可以去掉 不然在使用ImageMagick命令处理图片时会提示错误。
安装ImageMagick
下载地址:http://downloads.jmagick.org/6.4.0/
# wget http://downloads.jmagick.org/6.4.0/ImageMagick-6.4.0-0.tar.gz
# tar -zvxf ImageMagick-6.4.0-0.tar.gz
# cd ImageMagick-6.4.0-0/
指定ImageMagick安装到/usr/local/目录下
# ./configure --prefix=/usr/local/ImageMagick
# make && make install
没有报错 安装成功
无论是在安装ImageMagick扩展还是ImageMagick都有可能出现缺少一些包 可以使用yum命令去安装 比如缺少zlib包 使用 yum install zlib * 进行安装
ImageMagick使用
转换格式命令:
# /usr/local/ImageMagick/bin/convert -format demo.jpg demo.png
将jpg转换成png
指定大小缩放:
# /usr/local/ImageMagick/bin/convert -resize "500x300>" demo.jpg demo_500.jpg
如果图片比500x300小就保持原样,以防小图片被放大失真
去除多余信息:
# /usr/local/ImageMagick/bin/convert -strip input.jpg output.jpg
将多余的信息去除:摄影时的光圈、快门、ISO、日期时间等各种与当时摄影条件相关的讯息,相机品牌型号,色彩编码,拍摄时录制的声音以及全球定位系统(GPS)等信息。
压缩比:
# /usr/local/ImageMagick/bin/convert -quality 75% demo.jpg demo_75.jpg
ImageMagick的命令很多 具体可以查看官方手册
http://www.imagemagick.org/script/command-line-tools.php