您的位置:首页 > 运维架构 > Linux

GraphicsMagick在Linux环境的安装 和 im4java的配置

2016-07-16 18:06 393 查看
安装之前,因为是图片处理,所以需要系统中安装了libpng和libjpeg的开发包,否则的话不会安装这两种文件的支持,GraphicsMagick就没法读取jpeg和png图片。如果之前已安装过imageMagick和jmagick,且可以正常生成图片的则直接进入GraphicsMagick的安装。

注意:下面所有的安装步骤都需要在root用户下完成。

安装:

yum install libjpeg-devel

yum install libpng-devel

2、 使用 configure 来进行自动的配置、build和安装

# ./configure '--prefix=/usr/local/GraphicsMagick-1.3.24' '--exec-prefix=/usr/local/GraphicsMagick-1.3.24'
'--bindir=/usr/local/GraphicsMagick-1.3.24/bin' '--sbindir=/usr/local/GraphicsMagick-1.3.24/sbin'
'--sysconfdir=/usr/local/GraphicsMagick-1.3.24/etc' '--datadir=/usr/local/GraphicsMagick-1.3.24/share'
'--includedir=/usr/local/GraphicsMagick-1.3.24/include' '--libdir=/usr/local/GraphicsMagick-1.3.24/lib'
'--libexecdir=/usr/local/GraphicsMagick-1.3.24/libexec' '--localstatedir=/usr/local/GraphicsMagick-1.3.24/var'
'--sharedstatedir=/usr/local/GraphicsMagick-1.3.24/share/com' '--mandir=/usr/local/GraphicsMagick-1.3.24/share/man'
'--infodir=/usr/local/GraphicsMagick-1.3.24/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

如果configure提示“configure: error: libltdl is required for modules build”

则yum install libtool-ltdl libtool-ltdl-devel

在执行完上述命令后会有一段输出,可以查看GraphicsMagick支持的图片格式,在Configured value下为yes的表示为支持,PNG、JPEG v1和ZLIB必须为yes,若不为yes将按照前提中所写的进行操作,然后再重复执行上述命令,一直到全部支持为止,否则将无法正常进行截图操作,如下图所示:

接下来就是安装

# make

# make install

3、 设置环境变量

# vi /etc/profile

在/etc/profile文件的最后添加如下配置:
export JAVA_HOME=/usr/local/java/jdk1.7.0_60

export JRE_HOME=/usr/local/java/jdk1.7.0_60/jre

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

export GMAGICK_HOME="/usr/local/GraphicsMagick-1.3.24"

export PATH="$GMAGICK_HOME/bin:$PATH"

LD_LIBRARY_PATH=$GMAGICK_HOME/lib:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH

IM4JAVA_TOOLPATH=/usr/local/GraphicsMagick-1.3.24/bin/gm

注意:修改完后执行 ldconfig 让设置立即生效,并logout,然后重新登录。

至此就配置完毕了。

4、 使用命令查看GraphicsMagick所支持的图片格式:

# gm convert -list formats

如果列表中如果显示PNG、JPEG、GIF等则表示已支持图片转换。

5、 测试安装是否正常,使用如下命令:

gm convert -resize 100x80^ -gravity Center -crop 100x80+0+0 sample.jpg thumb.jpg

命令说明:gravity 表示中心坐标,可选值为 Center , NorthWest(左上), NorthEast(右上), SouthWest(左下), SouthEast(右下) ,由Center参数即由中心开始向两边裁剪,+指定x轴向y轴向的偏移量。sample.jpg/png为要裁剪的图片且必须存在,thumb.jpg/png为裁剪后生成的新图片,可以拷贝生成的文件到本地后查看,能正常显示,则说明所有安装均正常。

6、 给XX用户赋graphicsMagick安装目录的访问权限

上述安装步骤都是在root用户下进行的,所以在安装完成之后需要给XX用户赋访问权限,否则在XX用户下截取图片,将会报错org.im4java.core.CommandException: java.io.IOException: Cannot run program "gm": java.io.IOException:
error=13, Permission denied。

使用root用户登录,然后执行如下命令:

# chown -R XX:users /usr/local/GraphicsMagick-1.3.24

7.常见问题

使用im4java调用若遇到 java.io.FileNotFoundException: gm 错误,重启服务器试试,我是这样解决的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息