`
jiasongmao
  • 浏览: 648049 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

jmagick安装步骤

阅读更多
安装说明:
==========================================================
ImageMagick 是一个功能很强的图片处理程序。可应用在多种操作系统平台上。
安装ImageMagick和JMagick
如果安装了老版本ImageMagick的rpm包,请先删除(一般centos会自动安装imagemagick),删除命令:rpm -e ImageMagick,如果删除不了,提示说需要ImageMagick-devel包。下载安装后然后卸载就可以了。地址:http://centos.ustc.edu.com.

安装环境要求:
服务器如果没有安装Jpeg v6b、libPng、FreeType 的要在安装imagemagick之前先装好,否则imagemagick没法读取jpeg和png图片,字体文件也读不了。下面是安装Imagemagick时./configure的结果,可以查看imagickMagick是否支持哪些格式的图片以及一些环境配置:

例如,你应该检查是否已经安装如下rpm包:
rpm –qa |grep libpng
rpm –qa |grep libpng-devel
rpm –qa |grep libjpeg
rpm –qa |grep gd-devel

如果你希望支持tiff格式,还应该检查
rpm –qa |grep libtiff

如果没有安装,那么在Linux安装光盘找到相应rpm包或者从网上下载,安装上,
再次configure直到确认需要的图形格式全部支持为止,然后编译安装:

*安装jpeg包:
tar -zvxf jpegsrc.v6b.tar.gz
cd jpeg-6b/
./configure --enable-shared --enable-static ; make ; make install

*安装png包:先在http://sourceforge.net/projects/libpng/上下载最新的libpng包
tar -xzvf libpng-1.2.12.tar.gz
cd libpng-1.2.12
cp scripts/makefile.std makefile
make
make install

*编译并安装tiff格式支持文件,
tar zvxf tiff-3.8.2.tar.gz
./configure
make
make install

--------------------------------------------------------

在http://www.yeo.id.au/jmagick/上下载最新的ImageMagick和JMagick包

安装ImageMagick包
tar xzvf ImageMagick-6.5.3-2.tar.gz
./configure --prefix=/opt/ImageMagick --enable-share --enable-static
make
make install

或者:./configure --prefix=/opt/ImageMagick --enable-lzw --with-modules && make && make install

使用convert 看看是否可以转换文件
测试:convert -geometry 600x200 1503.jpg 1503_small.jpg

如果这一步都没有测试成功,那么说明你的配置还有问题,如果错误提示信息是:convert: no decode delegate for this image format,那么你需要使用convert -list format命令查找一下convert支持的文件类型,如果不包含jpeg格式,那么说明你上面的jpeg包没有安装好。建议从www.centos.ustc.edu.com下载jepg、jpeg-devel的rpm安装上,然后再从新安装上面的Jpeg包和imagemagick.


安装JMagick包

首先确保你的JDK和ImageMagick的环境变量已经配置到了/etc/profile文件中。
配置项:
JAVA_HOME=/usr/java/jdk5
IMAGEMAGICK_HOME=/opt/ImageMagick

接下来就可以安装了
tar xzvf jmagick-6.4.0.tar.gz

./configure --prefix=/opt/JMagick --with-magick-home=$IMAGEMAGICK_HOME
--enable-share --enable-static --with-java-home=$JAVA_HOME
make all
make install

测试JMagick,在test包里有Test.java 环境变量生效后再测试
# make test

# make javadoc


========================================================
这样就安装完成,接下来的还要配置环境变量。

vi /etc/profile
主要是加入JMagick的相关配置:
JAVA_HOME=/usr/java/jdk1.5.0_19
IMAGEMAGICK_HOME=/opt/ImageMagick
CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib:/opt/JMagick/lib
PATH=$JAVA_HOME/bin:/opt/ImageMagick/bin:/opt/ImageMagick/bin:$PATH
LD_LIBRARY_PATH=:/opt/JMagick/lib:/opt/ImageMagick/lib
DYLD_LIBRARY_PATH=:/opt/JMagick/lib:/opt/ImageMagick/lib
export PATH CLASSPATH JAVA_HOME IMAGEMAGICK_HOME LD_LIBRARY_PATH DYLD_LIBRARY_PATH


执行命令:
ldconfig

把JMagick包中的jmagick.jar拷贝到JAVA JDK的jre---lib---ext目录下
把JMagick包中的***.so拷贝到/lib和/bin目录。

然后注销当前用户重新登录,便于环境变量修改生效,执行:convert logo: logo.gif

看是否正确生成一个logo.gif的图片文件。

=======================================================
如果要在Web Application Server(Resin,Tomcat),需要再运行时加入参数: -Djmagick.systemclassloader=no

或者在程序中写入:System.setProperty("jmagick.systemclassloader", "no");


命令行使用方法:

convert -resize 100x200 22.jpg(图片路径) 11.jpg(缩放后存放路径) 图片按比例缩放

convert -resize 100x200\! 22.jpg(图片路径) 11.jpg(缩放后存放路径) 强制按给定的宽高缩放


convert -crop 100(长)x200(高)+10(x坐标)+10(y坐标) 22.jpg(图片路径) 11.jpg(缩放后存放路径) 裁剪图片


在JAVA程序中的实例代码:
import magick.ImageInfo;
import magick.MagickException;
import magick.MagickImage;

public class Test {

/**
* @param args
*/
public static void main(String[] args) {
try {
System.setProperty("jmagick.systemclassloader","no");
ImageInfo info = new ImageInfo("F:/Picture/tmp/140502170-0.jpg");
MagickImage image = new MagickImage(info);

MagickImage scaleImg = image.scaleImage(180, 180);
scaleImg.setFileName("F:/Picture/tmp/222.jpg");
scaleImg.writeImage(info);
} catch (MagickException e) {
e.printStackTrace();
}
}

}
分享到:
评论
1 楼 bo_hai 2015-04-18  
./usr/bin/java: symbol lookup error: /usr/hongboliu/imagemagick/6.4.0/lib/libJMagick-6.4.0.so: undefined symbol: MagickCoreGenesis
make[1]: *** [test] 错误 127
make[1]: Leaving directory `/usr/hongboliu/imagemagick/6.4.0/test/magicktest'
make: *** [test] 错误 2


运行时,报这个错,怎么破呢 ?

相关推荐

Global site tag (gtag.js) - Google Analytics