图片处理是大多数电子商务系统必须用到的组件,下面介绍ImageMagick的安装!
一、软件列表
ImageMagick-6.7.1-0.tar.gz
JMagick-6.4.0-0.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.5.4.tar.gz
tiff-3.8.2.tar.gz
freetype-2.3.11.tar.gz
zlib-1.2.5.tar.bz2
二、安装过程
1、安装jpeg支持软件jpegsrc.v6b.tar.gz
tar zvxf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --enable-shared --enable-static
make
make install
2、安装png支持软件libpng-1.5.4.tar.gz[安装libpng1.4.0以上包后ImageMagick安装失败](安装支持软件zlib-1.2.5)
tar zxvf zlib-1.2.5.tar.gz
cd zlib-1.2.5
CFLAGS="-O3 -fPIC" ./configure //使用64位元的方法进行编译
make
make install
tar zvxf libpng-1.5.4.tar.gz
cd libpng-1.5.4
./configure
make
make install
3、安装tiff支持软件
tar zvxf tiff-3.8.2.tar.gz
cd tiff-3.8.2
./configure
make
make install
4、安装freetype字体支持软件freetype-2.3.11.tar.gz
tar zxvf freetype-2.3.11.tar.gz
cd freetype-2.3.11
./configure --prefix=/usr/local/freetype-2.3.11
make
make install
5、安装ImageMagick-6.7.1-0.tar.gz
tar zvxf ImageMagick-6.7.1-0.tar.gz
cd ImageMagick-6.7.1-0
./configure --prefix=/usr/local/ImageMagick --enable-share --enable-lzw
make
make install
6、JMagick是一个开源API,利用JNI(Java Native Interface)技术实现了对ImageMagickAPI的Java访问接口。安装jmagick-6.4.0-src.tar.gz
tar xvfz jmagick-6.4.0-src.tar.gz
cd 6.4.0
./configure --prefix=/usr/local/jmagick-6.4.0 --with-magick-home=/usr/local/ImageMagick --enable-share --enable-static
make
make install
三、常出现的问题及解决的方法
问题1描述:
configure:error:no acceptable cc found in $path解决办法
这是缺少GCC编译器造成的,安装即可,网上也有说是路径问题!
解决办法:
在终端中输入命令#yum install gcc
问题2描述:
[root@bogon jpeg-6b]# make; make install
./libtool --mode=compile gcc -O2 -I. -c ./jcapimin.c
make: ./libtool:命令未找到
make: *** [jcapimin.lo] 错误 127
./libtool --mode=compile gcc -O2 -I. -c ./cjpeg.c
make: ./libtool:命令未找到
make: *** [cjpeg.lo] 错误 127
解决办法:
首先看有没有安装libtool 及 libtool-ltdl-devel
rpm -qa | grep libtool
然后进入jpeg-6b的源码目录,然后执行以下步骤,切记!COPY到当前目录注意后面的点(.)
cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .
也就是把 libtool里面的两个配置文件拿来覆盖掉jpeg-6b目录下的对应文件
make clean 再重新configure
没有权限的时候先建立对应的文件夹,再次make install就行了
问题3描述:
在安装 JMagick 时,
[root@bogon ]# make
make: *** [coders/coders_png_la-png.lo] Error 1
make: *** Waiting for unfinished jobs....
解决办法:
安装 低版本的 libpng
四、将JMagic库加入到共享库中
Linux系统时:export LD_LIBRARY_PATH=
$LD_LIBRARY_PATH:/usr/local/jmagick-6.4.0/lib:/usr/local/ImageMagick/lib
在export CLASSPATH中加入:/usr/local/jmagick-6.4.0/lib
source /etc/profile
五、测试
convert -sample 100x200 input.jpg output.jpg
convert logo: logo.jpg
convert logo: logo.png
convert logo: logo.gif
将其拷贝出来,看是否能显示
六、在JAVA工程中使用Jmagick压缩生成图片
将jmagick-6.4.0.jar拷贝至jre的lib /ext下,
比如 /usr/java/jdk1.6.0_12/jre/lib/ext/ jmagick-6.4.0.jar