当前位置: 首页 > 工具软件 > im4java > 使用案例 >

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

相云
2023-12-01
安装之前,因为是图片处理,所以需要系统中安装了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 错误,重启服务器试试,我是这样解决的

 类似资料: