GraphicsMagickphp
当前稳定版本:1.3.12(发布日期2010-03-08)html
简单介绍:linux
GraphicsMagick号称图像处理领域的瑞士军刀。 短小精悍的代码却提供了一个鲁棒、高效的工具和库集合,来处理图像的读取、写入和操做,支持超过88中图像格式,包括重要的DPX、GIF、JPEG、JPEG-2000、PNG、PDF、PNM和TIFF。apache
经过使用OpenMP但是利用多线程进行图片处理,加强了经过扩展CPU提升处理能力。安全
GraphicsMagick能够再绝大多数的平台上使用,Linux、Mac、Windows都没有问题。多线程
GraphicsMagick 支持大图片的处理,而且已经作过GB级别的图像处理实验。GraphicsMagick可以动态的生成图片,特别适用于互联网的应用。能够用来处理调整尺 寸、旋转、加亮、颜色调整、增长特效等方面。GaphicsMagick不只支持命令行的模式,同时也支持C、C++、Perl、PHP、Tcl、 Ruby等的调用。事实上,GraphicsMagick是从 ImageMagick 5.5.2 分支出来的,可是如今他变得更稳定和优秀,下面就是两个之间的一些比较。工具
GM更有效率(测评),能更快的完成处理工做测试
GM更小更容易安装网站
GM已经被Flickr和Etsy使用,天天处理百万计的图片ui
GM与已经安装的软件不会发生冲突
GM几乎没有安全问题
GM的手册很是丰富
…(无关痛痒的正确的废话)
如何安装:
GraphicsMagick可使用源码安装在任何现代的Unix机器(Linux和MacOS X)和Windows上,这里只介绍Linux下的安装,其余的安装还须要参看这里。
下载 .tar.gz 的源码包,进行解压
tar -xvzf GraphicsMagick-1.3.12.tar.gz
解压后,原来在的gz文件就变成了tar文件,进入文件夹
cd GraphicsMagick-1.3.12
安装以前,由于是图片处理,因此须要系统中安装了libpng和libjpeg的开发包,不然的话不会安装这两种文件的支持。
使用 configure 来进行自动的配置、build和安装
./configure
当 然,能够经过 –prefix=PATH 来指定参数,还能够指定其余编译时的变量,这里使用了一个通过测试的 configure 配置,同时添加了 enable-sybol-prefix ,这样就避免了和系统中已有的 ImageMagick 的冲突,下面是完成的配置参数:
./configure '--build=i686-redhat-linux-gnu' '--host=i686-redhat-linux-gnu' '--target=i386-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr/local/sinasrv2' '--exec-prefix=/usr/local/sinasrv2' '--bindir=/usr/local/sinasrv2/bin' '--sbindir=/usr/local/sinasrv2/sbin' '--sysconfdir=/usr/local/sinasrv2/etc' '--datadir=/usr/local/sinasrv2/share' '--includedir=/usr/local/sinasrv2/include' '--libdir=/usr/local/sinasrv2/lib' '--libexecdir=/usr/local/sinasrv2/libexec' '--localstatedir=/usr/local/sinasrv2/var' '--sharedstatedir=/usr/local/sinasrv2/share/com' '--mandir=/usr/local/sinasrv2/share/man' '--infodir=/usr/local/sinasrv2/share/info' '--enable-libtool-verbose' '--with-included-ltdl' '--enable-shared' '--disable-static' '--with-modules' '--with-frozenpaths' '--without-perl' '--without-magick-plus-plus' '--with-quantum-depth=8' --enable-symbol-prefix
接下来就是安装
make
make install
安装gmaick:
安装GraphicsMagick后,还须要安装gmaick才能在PHP中使用,首先从PECL的网站上下载安装包。而后解压缩,进入到gmaick的目录中
cd gmagick-1.0.7b1
而后运行phpize
/usr/local/php/bin/phpize
完成后执行安装过程
./configure --with-php-config=/usr/local/sinasrv2/bin/php-config --with-gmagick=/usr/local/sinasrv2/
make
make install
在php.ini打开扩展后,重启apache就可使用了
与magickwand的比较:
本文使用了20个大小不一样的图片文件,分别使用gmagick和magickwand来完成打开图片、读取图片信息、关闭图片的操做,最后得出的结果以下:
整体上看,magickwand的效率要比GraphicsMagick差很多,可是效率的提高貌似与所处理的文件没有明显的线性关系,也许是图片过小了,听说GraphicsMagick能够处理Gb级的图片,更多的使用细节,只能在从此进一步研究了。