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級的圖片,更多的使用細節,只能在從此進一步研究了。