GraphicsMagick安装及使用
2013-04-28 07:36 idkkk 阅读(7525) 评论(0) 编辑 收藏 举报相信做过互联网图片的人都知道ImageMagick,超牛逼的图片处理库,而GraphicsMagick是从ImageMagick5.5.2的分支版本,支持多达88种图片格式的处理,而且相当稳定及高效,对于java应用来说GraphicsMagick+im4java简直就是天作之合。
1) 安装GraphicsMagick
# tar -zxvf GraphicsMagick-1.3.17.tar.gz # cd GraphicsMagick-1.3.17 # ./configure --prefix=/usr/local/graphicsmagick-1.3.17
输出以下内容,注意红色部分:
Delegate Configuration: BZLIB --with-bzlib=yes yes DPS --with-dps=yes no FlashPIX --with-fpx=no no FreeType 2.0 --with-ttf=yes no (需要freetype支持) Ghostscript None gs (unknown) Ghostscript fonts --with-gs-font-dir=default /usr/share/fonts/default/Type1/ Ghostscript lib --with-gslib=no no JBIG --with-jbig=yes no JPEG v1 --with-jpeg=yes no (需要libjpeg支持) JPEG-2000 --with-jp2=yes no LCMS v1 --with-lcms=yes no LCMS v2 --with-lcms2=yes no LZMA --with-lzma=yes no Magick++ --with-magick-plus-plus=yes yes PERL --with-perl=no no PNG --with-png=yes no (需要libpng支持) TIFF --with-tiff=yes no TRIO --with-trio=yes no Windows fonts --with-windows-font-dir= none WMF --with-wmf=yes no X11 --with-x= no XML --with-xml=yes yes ZLIB --with-zlib=yes yes
如果./configure后出现以上信息,则需要安装第三方库以支持JPEG,PNG,FreeType处理,步骤如下:
a) 安装libjpeg
# cd .. # rpm -qa | grep libjpeg # rpm -qa | grep libjpeg | xargs rpm -e --nodeps --allmatches # wget ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/delegates/libjpeg-6b.tar.gz # tar -zxvf libjpeg-6b.tar.gz # cd libjpeg-6b # ./configure # make # make install # ln -s /usr/local/lib/libjpeg* /lib/ # ln -s /usr/local/lib/libjpeg* /lib64/
b) 安装libpng
# cd .. # rpm -qa | grep libpng # rpm -qa | grep libpng | xargs rpm -e --nodeps --allmatches # wget ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/delegates/libpng-1.2.49.tar.gz # tar -zxvf libpng-1.2.49.tar.gz # cd libpng-1.2.49 # ./configure # make # make install # ln -s /usr/local/lib/libpng* /lib/ # ln -s /usr/local/lib/libpng* /lib64/
c) 安装freetype
# cd .. # rpm -qa | grep freetype # rpm -qa | grep freetype | xargs rpm -e --nodeps --allmatches # wget ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/delegates/freetype-2.4.10.tar.gz # tar -zxvf freetype-2.4.10.tar.gz # cd freetype-2.4.10 # ./configure # make # make install # ln -s /usr/local/lib/freetype* /lib/ # ln -s /usr/local/lib/freetype* /lib64/
d) 安装GraphicsMagick
# cd ../GraphicsMagick-1.3.17 # ./configure --prefix=/usr/local/graphicsmagick-1.3.17 # make # make install
备注:有可能会在安装libpng时,出现ZLIB无法找到的情况,则按照类似方法安装ZLIB。
2) 使用GraphicsMagic
将GraphicsMagic_HOME/bin目录加入到执行PATH中,然后执行以下命令。
>> 查看GraphicsMagic帮助
# gm -help
>> 将input.jpg制作成640x480的缩略图
# gm convert input.jpg -geometry 640x480^ -gravity center -extent 640x480 output.jpg
>> 将input.jpg制作成640x480的图片,多余的部分留白
# gm convert input.jpg -geometry 640x480^ -background white -gravity center -extent 640x480 output.jpg
>> 给inputjpg图片追加文字水印
# gm convert input.jpg -font Bookman-DemiItalic -fill red -pointsize 33 -draw "text 1600,50 'www.abc.com'" output.jpg
>> 添加边框
# gm convert input.jpg -frame 15x15+3+3 output.jpg
下一遍将带来im4java的代码示例。