在安装ImageMagick之前,请检查下面包已经安装

tiff-3.9.5.tar.gz         (rpm -qa|grep libtiff检查是否已经安装)

libpng-1.2.46.tar.gz     (rpm -qa|grep libpng检查是否已经安装)

jpegsrc.v6b.tar.gz       (rpm -qa|grep libjpeg检查是否已经安装)

freetype-2.3.9.tar.bz2   (rpm -qa|grep freetype检查是否已经安装)

libjpeg-devel

下载地址 http://pkgs.org/download/libjpeg-devel

----tiff-3.8.2.tar.gz   支持tif文件  http://www.linuxfromscratch.org/blfs/view/6.3/general/libtiff.html

----jpegsrc.v6b.tar.gz  支持jpg    或jpegsrc.v8b.tar.gz版本也可 http://www.ijg.org/files/jpegsrc.v6b.tar.gz

----zlib-1.2.6.tar.gz  支持PNG24

----libpng-1.4.10.tar.gz  支持PNG  或 libpng-1.4.3.tar.gz版本也可 http://sourceforge.net/projects/libpng/

----jasper-1.900.1.zip   支持JPEG2000
----freetype-2.4.4.tar.gz  支持字体

wget http://downloads.jmagick.org/6.4.0/ImageMagick-6.4.0-0.tar.gz,

http://downloads.jmagick.org/6.4.0/jmagick-6.4.0-src.tar.gz

(1)安装tiff-3.8.2

tar –zxvf tiff-3.8.2.tar.gz

cd tiff-3.8.2

./configure

make

make install

make check

2)安装jpegsrc.v6b.tar.gz

tar -zxvf jpegsrc.v6b.tar.gz

./configure

make && make install

# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static

# make

# make install

3)安装zlib-1.2.6.tar.gz

tar -xzvf zlib-1.2.5.tar.gz 
cd zlib-1.2.5
./configure
make
make install

(4)安装libpng-1.4.10.tar.gz

tar -zxvf libpng-1.4.10.tar.gz

cd libpng-1.4.10

./configure

make

make install

makeckeck

5)安装jasper包,安装后才能处理JPEG2000格式图片
unzip jasper-1.900.1.zip   
cd jasper-1.900.1  
CFLAGS=-fPIC  ./configure   
make CFLAGS=-fPIC   
make  CFLAGS=-fPIC install

6)安装freetype

tar -zxvf freetype-2.1.10.tar.gz

cd freetype-2.1.10

./configure
make
make install

7)安装ImageMagick

tar -zxvf ImageMagick.tar.gz

cd ImageMagick-6.7.6-1

./configure -prefix=/usr/local/ImageMagick

make

make install

make check (会报错,不用理会)

测试

convert  -resize 100x100 111.jpg 11.jpg

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

8)安装Jmagick

tar -zxvf JMagick-6.2.6-0.tar.gz
cd JMagick-6.2.6-0
./configure -prefix=/usr/local/Jmagick -with-magick-inc-dir=/usr/local/ImageMagick/include

如果出现错误:Unable to find ImageMagick header files,使用下面语句:

./configure -prefix=/usr/local/Jmagick -with-magick-inc-dir=/usr/local/ImageMagick/include/ImageMagick

6.2.4版本的include文件夹和6.4.0的文件夹路径不同造成的,大家安装的时候可以先检查一下include路径下的东西再进行该步骤。

make

make install

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin:/usr/local/ImageMagick/bin/

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/Jmagick/lib:/usr/local/ImageMagick/lib

export CLASSPATH=$CLASSPATH:/usr/local/Jmagick/lib

//测试类

/usr/local/Jmagick/lib jar 放入 测试test文件夹

java -Djava.ext.dirs=./test/  test.JmagickTest 111.jpg 111_s.jpg

测试类代码

package test;
import java.awt.Rectangle;
import java.io.File;
import magick.ImageInfo;
import magick.MagickException;
import magick.MagickImage;

public class JmagickTest {

static {
  System.setProperty("jmagick.systemclassloader", "no");
 }
 
 public static void main(String[] args){
  
  if(null==args||args.length<2){
   System.out.println("please input srcImage destImage");
  }
  System.out.println(System.getProperty("java.library.path")); 
  
  System.out.println("srcImage:"+args[0]);
  System.out.println("destImage:"+args[1]);
  try {
   createThumbnail(args[0],args[1],100,100);

System.out.println("compled...");
  } catch (MagickException e) {
   e.printStackTrace();
  }
 }

/**
     * 图片缩放
     * */
 public static void createThumbnail(String srcImage, String destImage,
   int width, int height) throws MagickException {
  ImageInfo info = null;
  MagickImage image = null;
  MagickImage scaled = null;
  try {
   String file = srcImage;
   File f = new File(file);
   System.out.println("--f.exists()-->"+f.exists());
   info = new ImageInfo(file);
   image = new MagickImage(info);
   scaled = image.scaleImage(width, height);
   String slogoName = destImage;
   scaled.setFileName(slogoName);
   scaled.writeImage(info);

} finally {
   if (scaled != null) {
    scaled.destroyImages();
   }
  }
 }
 
}

http://downloads.jmagick.org/6.4.0/ImageMagick-6.4.0-0.tar.gz

http://downloads.jmagick.org/6.4.0/jmagick-6.4.0-src.tar.gz

http://www.ijg.org/

http://prdownloads.sourceforge.net/libpng/libpng-1.6.10.tar.gz?download

libjpeg-devel

下载地址 http://pkgs.org/download/libjpeg-devel

./configure --prefix=/usr/local/jmagick --with-java-home=/usr/local/jdk1.6.0_31 --enable-diagnostic --with-magick-home=/usr/local/ImageMagick --with-magick-inc-dir=/usr/local/ImageMagick/include/ImageMagick-6

http://hi.baidu.com/thinkingjava/item/55ead6b5e64ac477254b09a0

http://blog.csdn.net/shixing_11/article/details/6938396

http://elf8848.iteye.com/blog/455675

http://hi.baidu.com/thinkingjava/item/55ead6b5e64ac477254b09a0

1. 下载ImageMagick-6.4.0-0.tar.gz from 
     wget http://downloads.jmagick.org/6.4.0/ImageMagick-6.4.0-0.tar.gz,
2.  tar -xzvf ImageMagick-6.4.0-0.tar.gz
3.  mkdir /usr/local/imagemagick
4.  cd ImageMagick-6.4.0-0
5.  ./configure --prefix=/usr/local/imagemagick/
6.  先make,  然后make install, 再vi /etc/profile, 在最后添加: export $PATH=$PATH:/usr/local/imagemagick/bin

以上安装好之后使用以下方法校验是否安装成功:check: convert 1.jpg -resize 50% 11.jpg

(三)安装JMagick,最好保证ImageMagick和JMagic版本一致

1.  下载jmagick from http://downloads.jmagick.org/6.4.0/jmagick-6.4.0-src.tar.gz
2.   tar -xzvf jmagick-6.4.0-src.tar.gz
3.   cd jmagick-6.4.0-src
4.   ./configure
5.   make, make install
6.   cd lib
#so文件必须放在/usr/lib/ ,否则 java找不到.so库文件
7.   cp *.so /usr/lib/  (我试过,只放一个so,貌似也可以,但是只是简单测试,可能复杂的需要全面)
#把so库文件路径加载到配置文件
8.   vi /etc/ld.so.conf, add: /usr/local/imagemagick/lib
9.   ldconfig #加载至库文件缓存

(四)测试代码:

package com.xingleilee;

import java.awt.Dimension;
import java.text.SimpleDateFormat;
import java.util.Calendar;

import magick.ImageInfo;
import magick.MagickImage;

public class Test {

static {
// 不能漏掉这个,不然jmagick.jar的路径找不到
System.setProperty("jmagick.systemclassloader", "no");
}

/**
* 压缩图片

* @param filePath
* 源文件路径
* @param toPath
* 缩略图路径
*/
/**
* @param filePath
* @param toPath
* @throws Exception
*/
public static void createThumbnail(String filePath, String toPath)
throws Exception {
ImageInfo info = null;
MagickImage image = null;
Dimension imageDim = null;
MagickImage scaled = null;
try {
info = new ImageInfo(filePath);
image = new MagickImage(info);
imageDim = image.getDimension();
int wideth = imageDim.width;
int height = imageDim.height;

height = height/2;
wideth = wideth/2;

scaled = image.scaleImage(wideth, height);// 小图片文件的大小.
scaled.setFileName(toPath);
scaled.writeImage(info);
} catch (Exception e) {
System.out.println(filePath + "压缩 excpeiton");
e.printStackTrace();
} finally {
if (image != null) {
image.destroyImages();
}
if (scaled != null) {
scaled.destroyImages();
}
}
}

/**
* @param args
*/
public static void main(String[] args) throws Exception {

String srcFile1 = "/home/xingleilee/Downloads/images/1.jpg";
String destFile1 = "/home/xingleilee/Downloads/images/";
String destFile11 = "/home/xingleilee/Downloads/images_dest/";

//start:2012-06-17 22:49:18
//end:2012-06-17 22:53:38

System.out.println("start:"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime()));
for (int i = 0; i < 1000; i++) {
createThumbnail(destFile1 + i + "_dest.jpg", destFile11 + i + "_dest.jpg");
}

System.out.println("end:"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime()));
}

}

ImageMagick jmagick 安装的更多相关文章

  1. 转:ImageMagick +Jmagick安装

    原文来自于: 目录 一.ImageMagick介绍 二.安装支持库 三.在Linux上用源码编译安装ImageMagick与Jmagick 四.在Linux上使用yum安装ImageMagick与Jm ...

  2. 图片处理服务 ImageMagick 的安装和使用

    简介 该文章使用目前官方最新版本7.0.8,这里只记录下Windows系统下的安装. 官方网站:http://www.imagemagick.org/script/index.php. ImageMa ...

  3. php imagemagick库安装使用

    imagemagick介绍: ImageMagick® is a software suite to create, edit, compose, or convert bitmap images. ...

  4. ImageMagick的安装及使用

    近期在使用ImageMagick处理酒店团购图片,写篇博客小小的总结下它的安装及使用方法.ImageMagick是一套功能强大且免费的图片处理开发包,能够用来读,写和处理多种格式的图片文件,总之非常强 ...

  5. ImageMagick 的安装及使用

    一.什么是Imagemagick? ImageMagick是一款免费开源的图片编辑软件.既可以通过命令行使用,也可以通过C/C++.Perl.Java.PHP.Python或Ruby调用库编程来完成. ...

  6. linux安装imagemagick,centos安装imagemagick方法

    1.安装文件格式支持库 yum install tcl-devel libpng-devel libjpeg-devel ghostscript-devel bzip2-devel freetype- ...

  7. java图片处理工具之-ImageMagick+jmagick(二)

    简单的图片处理測试类: public class ImageUtil { static{           System.setProperty("jmagick.systemclassl ...

  8. Linux安装ImageMagick与JMagick完成过程及配置

    原文地址:http://www.iitshare.com/linux-install-imagemagick-jmagick.html 一.安装背景 最近在服务器上部署了HapiCMS的产品,因为其对 ...

  9. Linux端图形处理工具ImageMagick在Centos上的安装

    一.安装背景程序要用到用户上传图片,编辑的功能,能进行旋转,裁剪,缩放等. 二.ImageMagick介绍 ImageMagick是用C语言开发图片处理程序.可以对图片进行改变大小.旋转.锐化.减色或 ...

随机推荐

  1. linux下emacs配置文件

    1:安装.在ubuntu下使用命令 sudo apt-get install emacs,即可,我使用的是ubuntu的10.04的版本,在里面使用了据说是163的2个源. 1.1:如何更新快速的源, ...

  2. XML Parser Error on line 1: 前言中不允许有内容, Mybatis 生成代码

    使用用notepad++打开xml文件,然后在菜单“格式”中选择“以UTF-8无BOM格式编码”,保存.

  3. 新浪SAE部署 503 JDK版本冲突解决

    上午把本地调试好的微信应用部署到SAE上,结果访问503错误.关键日志:—————————————————————————————————org.eclipse.jetty.servlet.Servl ...

  4. Wordpress模板制作、改造、设计

    如何定义index.php以及如何派生出其它文件,在index.php文件中,在body元素内,新建如下结构化标记元素,各元素都带有不同的id属性: <div id=”page”> < ...

  5. iOS经典面试题

    前言 写这篇文章的目的是因为前两天同学想应聘iOS开发,从网上找了iOS面试题和答案让我帮忙看看.我扫了一眼,倒吸了一口冷气,仔细一看,气的发抖.整篇题目30多个没有一个答案是对的,总结这篇面试题的作 ...

  6. 单元测试框架-TestNG的安装

    一.在eclipse中安装TestNG插件 1)打开eclipse,选择help--> Install New Software

  7. SU supef命令学习

  8. DFS HDOJ 2181 哈密顿绕行世界问题

    题目传送门 题意:中文题面 分析:直接排完序后DFS.这样的题以后不应该再写题解的. #include <bits/stdc++.h> using namespace std; vecto ...

  9. LCS(打印全路径) POJ 2264 Advanced Fruits

    题目传送门 题意:两个字符串结合起来,公共的字符只输出一次 分析:LCS,记录每个字符的路径 代码: /* LCS(记录路径)模板题: 用递归打印路径:) */ #include <cstdio ...

  10. 关于StartCoroutine的简单线程使用

    StartCoroutine在unity3d的帮助中叫做协程,意思就是启动一个辅助的线程. 在C#中直接有Thread这个线程,但是在unity中有些元素是不能操作的.这个时候可以使用协程来完成. 使 ...