最近在做图片处理服务,最终选型使用
GraphicsMagick
进行图片处理
官网安装步骤: http://www.graphicsmagick.org/INSTALL-unix.html
前置步骤:
Mac 或者 Linux 系统安装 GM 之前,需要先安装 libjpeg 和 libpng 这两个库,否则命令无法处理 jpg 和 png 的文件,会出现如下报错:No decode delegate for this image format (XXX).
Linux直接执行命令: yum install -y libpng-devel libjpeg-devel libtiff-devel jasper-devel freetype-devel libtool-ltdl-devel*
Mac安装步骤
- 下载两个库的压缩包:
libjpeg: http://www.ijg.org/files/jpegsrc.v9b.tar.gz
libpng: ftp://ftp-osl.osuosl.org/pub/libpng/src/archive/gz/libpng16/libpng-1.6.29.tar.gz
- 两个库的安装步骤是一样的,以 libjpeg 举例:
tar -xzvf jpegsrc.v9b.tar.gz
cd jpeg-9b
./configure
make && make install
安装 GraphicsMagick
Mac安装步骤
第一步:下载
从官网选择版本下载:https://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/1.3.36/
解压到指定的文件夹,如:tar -xvf GraphicsMagick-1.3.36.tar.gz -C /Users/user/Public/imageTool/
第二步:配置&安装
进入文件夹:cd /Users/user/Public/imageTool/GraphicsMagick-1.3.36
设置安装路径 & 安装:
./configure --prefix=/Users/user/Public/imageTool/GraphicsMagick-x
make && make install
设置环境变量:
# GraphicsMagick
export GMAGICK_HOME="/Users/user/Public/imageTool/GraphicsMagick-x"
export PATH="$GMAGICK_HOME/bin:$PATH"
export LD_LIBRARY_PATH="$GMAGICK_HOME/lib/"
#end GraphicsMagick
第三步:测试
查看 GM 的版本:gm -version
测试图片缩放:gm convert /Users/user/Downloads/test.png -resize "50x50"
Linux 安装步骤
yum install -y gcc make
yum install -y libpng-devel libjpeg-devel libtiff-devel jasper-devel freetype-devel libtool-ltdl-devel*
curl -o image.tar.gz https://jaist.dl.sourceforge.net/project/graphicsmagick/graphicsmagick/1.3.36/GraphicsMagick-1.3.36.tar.gz
tar -zxvf image.tar.gz
cd GraphicsMagick-1.3.36/
./configure --prefix=/app/GraphicsMagick-x
make && make install
Windows安装步骤
官方下载页面: http://www.graphicsmagick.org/download.html
GM下载地址: ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/windows/GraphicsMagick-1.3.36-Q16-win64-dll.exe
windows gm自身支持png和jpg,不需要安装额外软件。直接下载完点击安装,一直next就行了,会自动配置环境变量,安装成功即可使用,非常简单!
其他问题记录
1、图片打水印时出现以下错误:
解决方案: 安装ghostscript
Linux:
yum install -y ghostscript
Mac:
brew install ghostscript 或 sudo port install ghostscript