ImageMagick +Jmagick安装

简介:


一、前提介绍

  ImageMagick是用C语言开发图片处理程序。可以对图片进行改变大小、旋转、锐化、减色或增加特效等操作。对图片的操作即可以通过命令行进行也可以用C/C++、Perl、Java、PHP、Python或Ruby编程来完成。ImageMagick 的官网是http://www.imagemagick.org/script/index.php

       由于我们是java项目直接使用java通过JNI技术调用ImageMagick的C语言接口是不行的。因为ImageMagick开发时没有使用java JNI生成的头文件。可以使用jmagick解决jmagick是由c语言开发的开发时使用了java JNI生成的头文件所以java可以通过JNI技术调用jmagick。jmagick再调用ImageMagick。这们我们处理图片使用的是jmagick暴露的java接口。

       JMagick不适合在Web应用中使用请参看JMagick的JNI-hazard问题 

       也可以使用JNA来调用ImageMagickJNA全称是Java Native Access,JNA是在JNI的基础上完善的方便的我们开发的。JNA项目主页是https://github.com/twall/jna 。使用JNA来调用ImageMagick就须要直接操作ImageMagick提供的C接口(API)。


二、安装支持库

       Linux服务器如果没有安装Jpeg v6b、libPng、FreeType库要在安装imagemagick之前先装好否则imagemagick没法读取jpeg和png图片字体文件也读不了.

      yum remove ImageMagick

      yum install libjpeg libjpeg-devel libpng libpng-devel libtiff libtiff-devel libungif libungif-devel freetype zlib -y


三、在Linux上用源码安装ImageMagick与jmagick【建议安装版本号相同】

    安装ImageMagick

  http://downloads.jmagick.org/6.4.0/ 

  tar zxf ImageMagick-6.4.0-0.tar.gz 

 cd ImageMagick-6.4.0

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

  make

 make install

 ldconfig /usr/local/lib

  /usr/local/bin/convert logo: logo.gif 

     安装jmagick

     tar zxf jmagick-6.4.0-src.tar.gz 

 cd jmagick-6.4.0-src.tar.gz 

 mv 6.4.0 jmagick

  ./configure --prefix=/usr/local/JMagick --with-java-home=/opt/jdk1.7.0_71/ --with-magick-   home=/usr/local/ImageMagick/include

  make

  make install

  convert --version


四、最后

1、编辑/etc/profile里面的PATH环境变量在最后面加入
     export PATH=/opt/ImageMagick/bin:$PATH
     LD_LIBRARY_PATH=/opt/lib
     export LD_LIBRARY_PATH

2、编辑/etc/ld.so.conf:
     找到include ld.so.conf.d/*.conf
  修改为
     include ld.so.conf.d/*.conf /opt/ImageMagick/lib
     也就是添加了"空格" + "/opt/ImageMagick/lib"
     执行命令
     ldconfig

 3、配置完成之后,进入/root/Jmagic/lib目录,
     共有三个文件
     jmagick-6.7.7.jar 

     libJMagick-6.7.7.so

     libJMagick.so -> ./libJMagick-6.7.7.so

     并把so文件复制 到你Jdk安装目录的 jre/lib/i386(64位amd64文件夹)文件夹下。
     cp libJMagick-6.7.7.so /opt/jdk1.7.0_71/jre/lib/amd64
     cd /opt/jdk1.7.0_71/jre/lib/amd64

     mv libJMagick-6.7.7.so  libJMagick.so
     这样就完成了对ImageMagick的安装接下来我们安装其提供的Java的应用程序接口JMagick。
 将/root/Jmagic/lib目录下的jar文件拷贝到工程的WEB-INFO/lib或者resin/lib下

     基本上完成了

      其实这个要java程序调用的时候才知道结果。


      将/root/Jmagic/lib目录下的jar文件拷贝到工程的WEB-INFO/lib或者resin/lib下

这个应该是再开发包的webinfo下的lib下

      安装成功后在/root/jmagick-6.7.7/lib/有一个jmagick-6.7.7.jar文件在你的java项目中就使用这个jar文件处理图片需要将jmagick-6.7.7.jar文件挪到TOMCAT的BIN目录,具体命令如下
       # mv *.jar /usr/local/tomcat/apache-tomcat-6.0.35/bin


五、测试安装是否正常

     进入ImageMagick安装目录,cd /opt/mageMagick/bin

     convert logo: logo.png 
     convert logo: logo.gif 
     convert logo: logo.jpg
     convert logo: logo.jpeg

     # cd ImageMagick-6.7.5-0/
      ls
      etc  include  lib  logo.gif  share

以拷贝生成的文件logo.gif 本地后查看图则说明所有安装均正常。


开始测试

.测试命令行使用方法:
 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(缩放后存放路径)   裁剪图片










本文转自 妙曼  51CTO博客,原文链接:http://blog.51cto.com/yanruohan/1591491,如需转载请自行联系原作者
目录
相关文章
|
Windows
zlib、libzip、 libzippp 库编译(windows + cmake + vs2013)
"libzipp" 这库是基于 "libzip" 之上封装的,而 "libzip" 又是基于 "zlib"库封装的,所以要编译 "libzipp" 库就要先编译其他两个库。下载准备:"zlib-1.2.
3755 0
无法执行 GraphicsMagick/ImageMagick #14
无法执行 GraphicsMagick/ImageMagick #14
64 0
|
Java Linux Windows
LINUX编译OpenJDK,也可以指定freetype
LINUX编译OpenJDK,也可以指定freetype
135 0
|
Apache
ImageMagick
ImageMagick
314 0
|
Ubuntu Linux 定位技术
Ubuntu安装GDAL 2.1
希望疫情早日得到控制,今天来回顾下之前提到的如何在Linux系统下安装GDAL,本文以Ubuntu为例。
1425 0
|
JavaScript Linux 前端开发
|
Java 应用服务中间件 Windows