Linux ImageMagick 转换图片格式工具

 

    前面在一个项目开发中用到了ImageMagick,rails中使用RMagick生成验证码, 我们自己的测试环境都正常,然后就按照我们开发环境的安装方法安装了客户的测试环境,但在处理jpeg类型图片的时候报错了。回头一看配置log,居然不支持jpeg。

 

   错误提示 :  ArgumentError (unknown format: JPG)

   安装 ImageMagick 查看安装信息

  Ghostscript lib --with-gslib=no no Graphviz --with-gvc=yes no JBIG --with-jbig=yes no JPEG v1 --with-jpeg=yes no JPEG-2000 --with-jp2=yes no LCMS v1 --with-lcms=yes no LCMS v2 --with-lcms2=yes no LQR --with-lqr=yes no LZMA --with-lzma=yes no Magick++ --with-magick-plus-plus=yes yes OpenEXR --with-openexr=yes no PERL --with-perl=no no PNG --with-png=yes yes RSVG --with-rsvg=yes no TIFF --with-tiff=yes no Windows fonts --with-windows-font-dir= none WMF --with-wmf=yes no X11 --with-x= yes XML --with-xml=yes yes ZLIB --with-zlib=yes yes

发现--with-jpeg=yes   为no

 

 

    ImageMagick  是变换图片的库群,支持perl,C++,JAVA等等语言。可以对图片进行各种各样的加工处理。

    ImageMagick的安装方法有RPM方式和SOURCE方式。目前最新版是ImageMagick-6.5.5。可以从这个网址下载:  http://www.imagemagick.org

安装步骤:

1.ssh连接Linux服务器

2.把下载的安装文件放到适当的文件夹下。例如:cd /usr/local/src。或者直接在服务器上下载。

3.解压下载文件

    tar -zxvf ImageMagick-6.5.5-7.tar.gz

5.移动到解压后的文件夹里面

   cd ImageMagick-6.3.5-7

6.configure配置

   ./configure

可以先执行   ./configure --help 看看有哪些配置参数。然后自己根据需要设置。

我们一般的图片处理都要求支持几种常见的图片形式:jpeg,png,gif。

查看配置后结果:yes的话支持,no就是不支持

      JPEG v1 --with-jpeg=yes yes

      PNG --with-png=yes yes

      ZLIB --with-zlib=yes yes

如果是no的情况,用过以下命令查看是否安装了相应的库。

   rpm -qa|grep jpeg   //zlib的用zlib, png的时候用libpng

执行结果:libjpeg-6b-33

一看执行结果确实是安装了jpeg库,但为什么不识别呢?最后网上查了一下半天,发现必须要安装libjpeg-devel库。有的系统可能默认已经安装了,所以可能没在意。知道原因就好办了,网上下载libjpeg-devel库RPM安装文件,rpm安装。

 

安装完后,再次配置ImageMagick,这下配置结果里面变成yes了。

7.编译

  make

8.安装

   install

这样ImageMagick就安装完了。

如果是用java开发的话,需要安装JMagick。从这里下载:ftp://ftp.imagemagick.org/pub/ImageMagick/java/

安装JMagick的时候需要主要的JAVA_HOME环境变量是不是和开发用的JDK版本一致,因为有的服务器有多个JDK版本,JMagick默认是用环境变量版本来编译的,如果版本不一致的话可能报版本不一致错误。

具体的图片支持需要什么库等信息可以从官方网站查看:http://www.imagemagick.org/script/formats.php

你可能感兴趣的:(java,jdk,linux,服务器,工具,fonts)