一.GraphicsMagick概述
1. 简介
GraphicsMagick号称图像处理领域的瑞士军刀。 短小精悍的代码却提供了一个鲁棒、高效的工具和库集合,来处理图像的读取、写入和操作,支持超过88中图像格式,包括重要的DPX、GIF、JPEG、JPEG-2000、PNG、PDF、PNM和TIFF。
通过使用OpenMP可是利用多线程进行图片处理,增强了通过扩展CPU提高处理能力。
GraphicsMagick可以再绝大多数的平台上使用,Linux、Mac、Windows都没有问题。
GraphicsMagick支持大图片的处理,并且已经做过GB级别的图像处理实验。GraphicsMagick能够动态的生成图片,特别适用 于互联网的应用。可以用来处理调整尺寸、旋转、加亮、颜色调整、增加特效等方面。GaphicsMagick不仅支持命令行的模式,同时也支持C、 C++、Perl、PHP、Tcl、Ruby等的调用。事实上,GraphicsMagick是从 ImageMagick 5.5.2 分支出来的,但是现在他变得更稳定和优秀,下面就是两个之间的一些比较。
2.比较
因为PHP接到请求后初始化资源,响应后释放一切的工作模式,在大负载的情况下,GD无疑会拖慢PHP,反过来说,ImageMagick和PHP 完全是松耦合的关系,如果PHP使用命令行调用ImageMagick的话,那么甚至可以说没什么联系。ImageMagick享用OS的资源,给PHP 提供服务.
3.整理收集
图片处理(GD、ImageMagick、GraphicsMagick)
常用的图片处理工具有GD,ImageMagick,GraphicsMagick等等。 GD就是个阿斗,略过不提;ImageMagick是目前最流行的图片处理工具,它的功能非常丰富;GraphicsMagick的功能略逊于 ImageMagick,但是它的效率更强悍,就好比Apache和Nginx一样,一个功能更强,一个效率更胜。据说Flickr原来就用 ImageMagick,后来改成了GraphicsMagick。似乎就是因为效率更好些。淘宝用于图片resize和水印的工具不是 imagemagick而是graphicsmagick。
Imagemagick与GD处理图片的优缺比较
第一、用Imagemagick替换GD进行图片的处理,GD和ImageMagick相比,首先是功能上面有区别。
第二、在处理结果,也就是画质上有区别。
第三,最重要的,性能上有差距。
关于性能比较,其实还是存在一点争议,有的测试结果指出,使用某些ImageMagick的API,处理速度反倒不如GD,有的测试结果也指出,少 量图片的处理GD的速度也比ImageMagick要快,随着图片数量和大小的上升,ImageMagick基本不受影响。但是无论如何,在性能方 面,ImageMagick有一个重要的优势:GD作为PHP的一个模块,因为PHP接到请求后初始化资源,响应后释放一切的工作模式,在大负载的情况 下,GD无疑会拖慢PHP,反过来说,ImageMagick和PHP完全是松耦合的关系,如果PHP使用命令行调用ImageMagick的话,那么甚 至可以说没什么联系。ImageMagick享用OS的资源,给PHP提供服务。
4.安装
二.GraphicsMagick PHP扩展安装
2 : 修改PHP.ini文件
3 : 显示php服务器的配置信息,查看扩展是否安装
三.GraphicsMagick PHP扩展使用方法
1.准备一张图
其他文档:http://devzone.zend.com/1559/manipulating-images-with-php-and-graphicsmagick/
1. 简介
GraphicsMagick号称图像处理领域的瑞士军刀。 短小精悍的代码却提供了一个鲁棒、高效的工具和库集合,来处理图像的读取、写入和操作,支持超过88中图像格式,包括重要的DPX、GIF、JPEG、JPEG-2000、PNG、PDF、PNM和TIFF。
通过使用OpenMP可是利用多线程进行图片处理,增强了通过扩展CPU提高处理能力。
GraphicsMagick可以再绝大多数的平台上使用,Linux、Mac、Windows都没有问题。
GraphicsMagick支持大图片的处理,并且已经做过GB级别的图像处理实验。GraphicsMagick能够动态的生成图片,特别适用 于互联网的应用。可以用来处理调整尺寸、旋转、加亮、颜色调整、增加特效等方面。GaphicsMagick不仅支持命令行的模式,同时也支持C、 C++、Perl、PHP、Tcl、Ruby等的调用。事实上,GraphicsMagick是从 ImageMagick 5.5.2 分支出来的,但是现在他变得更稳定和优秀,下面就是两个之间的一些比较。
2.比较
因为PHP接到请求后初始化资源,响应后释放一切的工作模式,在大负载的情况下,GD无疑会拖慢PHP,反过来说,ImageMagick和PHP 完全是松耦合的关系,如果PHP使用命令行调用ImageMagick的话,那么甚至可以说没什么联系。ImageMagick享用OS的资源,给PHP 提供服务.
3.整理收集
图片处理(GD、ImageMagick、GraphicsMagick)
常用的图片处理工具有GD,ImageMagick,GraphicsMagick等等。 GD就是个阿斗,略过不提;ImageMagick是目前最流行的图片处理工具,它的功能非常丰富;GraphicsMagick的功能略逊于 ImageMagick,但是它的效率更强悍,就好比Apache和Nginx一样,一个功能更强,一个效率更胜。据说Flickr原来就用 ImageMagick,后来改成了GraphicsMagick。似乎就是因为效率更好些。淘宝用于图片resize和水印的工具不是 imagemagick而是graphicsmagick。
Imagemagick与GD处理图片的优缺比较
第一、用Imagemagick替换GD进行图片的处理,GD和ImageMagick相比,首先是功能上面有区别。
第二、在处理结果,也就是画质上有区别。
第三,最重要的,性能上有差距。
关于性能比较,其实还是存在一点争议,有的测试结果指出,使用某些ImageMagick的API,处理速度反倒不如GD,有的测试结果也指出,少 量图片的处理GD的速度也比ImageMagick要快,随着图片数量和大小的上升,ImageMagick基本不受影响。但是无论如何,在性能方 面,ImageMagick有一个重要的优势:GD作为PHP的一个模块,因为PHP接到请求后初始化资源,响应后释放一切的工作模式,在大负载的情况 下,GD无疑会拖慢PHP,反过来说,ImageMagick和PHP完全是松耦合的关系,如果PHP使用命令行调用ImageMagick的话,那么甚 至可以说没什么联系。ImageMagick享用OS的资源,给PHP提供服务。
4.安装
官方主页 : GraphicsMagick
下载地址 : Download
1
2
3
4
| tar xvf GraphicsMagick-1.3.12.tar ./configure --without-prel --enable-shared --disable-openmp make make install |
下载地址 : Gmagick
相关文档 : Gmagick
1.安装PHP扩展 gmagick-1.0.9
1
2
3
4
5
6
| tar -zxvf gmagick-1.0.9b1.tgz cd gmagick-1.0.9b1 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make make install |
1
2
3
4
5
6
7
8
| # 修改配置文件 vi /usr/local/php/etc/php.ini # extension_dir = './' 更改路径 extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/gmagick.so" # 开启gmagick扩展 extension = gmagick.so # 重启Apache /usr/local/apache2/bin/apachectl restart |
1
2
3
4
5
| vi /usr/local/apache2/htdocs/index.php # 写入 <?php phpinfo(); ?> |
三.GraphicsMagick PHP扩展使用方法
1.准备一张图
1
2
3
4
5
6
| <?php # 如果使用扩展报错请安装libpng ,libjpeg ,libmcrypt到默认目录 $image = new Gmagick( '1.jpg' ); $image ->borderImage( 'blue' ,3,3)->oilPaintImage(0.1); $image ->write( '2.jpg' ); ?> |
1
2
3
4
5
6
| <?php $image = new Gmagick( '1.jpg' ); // 改变图片大小 $image ->resizeimage(100,200); $image ->write( '2.jpg' ); ?> |
其他文档:http://devzone.zend.com/1559/manipulating-images-with-php-and-graphicsmagick/