imagemagick的安装和使用案例

author author     2022-08-23     685

关键词:

ImageMagick是一个很好用的对图片进行格式转换、缩减大小、裁剪等等进行操作的工具,在windows和linux系统都可以安装,因为我们的环境是linux环境,所以我就以linux系统为安装环境进行测试。


系统环境:

# cat /etc/SuSE-release 

SUSE Linux Enterprise Server 11 (x86_64)

VERSION = 11

PATCHLEVEL = 2


一、编译安装环境


ImageMagick下载链接

https://www.imagemagick.org/download/ImageMagick.tar.gz


因为生产环境需要对png格式的图片进行修改,所以需要png库的支持,这里需要编译libpng-1.5.8.tar.gz,相应的如果你的图片格式是其他格式的,你就需要其他的库文件的支持。


/home/sxzhou # ll

total 13532

-rw-r--r-- 1 root root 12769934 Mar  2 14:02 ImageMagick.tar.gz

-rw-r--r-- 1 root root  1059513 Mar  2 14:12 libpng-1.5.8.tar.gz


编译安装libpng

/home/sxzhou # tar -zxf libpng-1.5.8.tar.gz

/home/sxzhou # cd libpng-1.5.8/

/home/sxzhou/libpng-1.5.8 # ./configure

/home/sxzhou/libpng-1.5.8 # make && make install


编译安装ImageMagick

/home/sxzhou # tar -zxf ImageMagick.tar.gz 

/home/sxzhou # cd ImageMagick-7.0.5-0/

/home/sxzhou/ImageMagick-7.0.5-0 # ./configure --prefix=/usr/local/ImageMagick --enable-share --enable-static LDFLAGS="-L/usr/lib64" CPPFLAGS="-I/usr/include"


这一步之后在末尾可以看到对于png图片格式的支持

  PANGO             --with-pango=yes            no

  PERL              --with-perl=no              no

  PNG               --with-png=yes              yes

  RAQM              --with-raqm=yes             no

  RSVG              --with-rsvg=no              no


/home/sxzhou/ImageMagick-7.0.5-0 # make && make install


/usr/local/ImageMagick # ldconfig /usr/local/lib


二、使用案例

2.1、对图片大小进行修改

-resize 对图片大小进行修改


/usr/local/ImageMagick/bin # ./convert -resize 500x300 /home/sxzhou/1.PNG /home/sxzhou/2.PNG

注意:

使用字母x代表乘号而不是*


参数说明:

500x300是指图片的宽x长(也可以只指明宽或者长,例如-resize 500,指明宽度,长度会按比例进行相应缩减,-resize x300,指明长度,宽度会按比例进行相应缩减)


/home/sxzhou/1.PNG 为源文件,也就是修改前的文件


/home/sxzhou/2.PNG 为目标文件,也就是修改后的文件


2.2、按比例缩减图片

-sample 按比例缩减图片

/usr/local/ImageMagick/bin # ./convert -sample 50% /home/sxzhou/1.PNG /home/sxzhou/3.PNG


以字节为单位显示文件大小

/home/sxzhou # du -sk *.PNG

120     1.PNG

112     2.PNG

56      3.PNG


把3.PNG拉出来查看图片大小(宽x高)可以发现也缩减了一半


2.3、对图片进行优化以及批量修改图片

在生产环境中经常会遇到对于图片大小要求尽可能小而清晰度高的情况,这时候就需要对于图片修改时加入优化的参数。


+profile “*” 去掉图片的exif信息


-quality 85  对图片的质量进行缩减(质量缩减直到75的范围内,肉眼识别的差别基本很小)


如下面所示:

在生产环境如果遇到批量修改图片,而且对于小于一定大小的图片不进行压缩,另外对于图片前后名字不变,如果同时满足以上的条件的话就需要组合命令。

/usr/local/ImageMagick/bin # ln -s /usr/local/ImageMagick/bin/convert /usr/bin/convert

修改前的图片大小

/home/sxzhou/ # du -sk *.png

44      BG00.png

428     BG01.png

80      BG10.png

44      BG11.png

1788    BJ00.png

592     BJ01.png

96      BJ10.png


批量修改图片

/home/sxzhou/ # find -name "*.png" -exec convert -resize ‘500x360>‘ {} {} ;

 

修改后的图片大小

/home/sxzhou/ # du -sk *.png

44      BG00.png

208     BG01.png

80      BG10.png

44      BG11.png

256     BJ00.png

260     BJ01.png

96      BJ10.png


可以看到只有红色部分标记的图片改变了大小

本文出自 “xiaoxiaozhou” 博客,请务必保留此出处http://xiaoxiaozhou.blog.51cto.com/4681537/1903499

安装imagemagick(代码片段)

...用MoviePy很多功能了,但是某些函数,还需要用到这个叫ImageMagick的软件。如果你不安装它会提示这样的错误:Tra 查看详情

使用imagemagick操作gif图

使用ImageMagick操作gif图上篇文章我们已经学习了GraphicsMagick中的许多函数,也说过GraphicsMagick是ImageMagick的一个分支,所以他们很多的函数都是一样的使用方式和效果,相似的内容我们也就不再多说了,感兴趣的朋... 查看详情

无法将已安装的字体与 ImageMagick 一起使用

】无法将已安装的字体与ImageMagick一起使用【英文标题】:UnabletouseinstalledfontwithImageMagick【发布时间】:2015-06-2911:04:14【问题描述】:我使用的是OSX10.10.3并使用Homebrew安装了ImageMagick。我正在尝试使用ImageMagick创建动态图像生成脚... 查看详情

使用 php/windows 安装 ImageMagick 扩展

】使用php/windows安装ImageMagick扩展【英文标题】:InstallingImageMagickextensionwithphp/windows【发布时间】:2010-05-1814:59:00【问题描述】:在带有IIS的WindowsServer2003上运行PHP版本5.2.5。拥有几乎相同的服务器,我们可以在其中毫无问题地安... 查看详情

imagemagick的下载和配置

...VC++的工程,项目->属性VC++目录中包含目录中加入4项,ImageMagick安装路径下的include文件夹,和include里边的三个文件夹。库目录中加入1项,ImageMagick安装路径下的lib文件夹。 C/C++->常规中附加包含目录,添加和(1)中包含... 查看详情

错误原始错误:未安装 ImageMagick/GraphicsMagick

】错误原始错误:未安装ImageMagick/GraphicsMagick【英文标题】:ERROROriginalError:ImageMagick/GraphicsMagickisnotinstalled【发布时间】:2015-09-2012:13:52【问题描述】:我有一个使用Imagemagick的应用程序,但我必须重建我的环境,现在当我尝试上... 查看详情

ImageMagick 中 GhostScript 的文件路径

】ImageMagick中GhostScript的文件路径【英文标题】:GhostScript\'sfilepathinImageMagick【发布时间】:2012-11-0908:54:47【问题描述】:我正在尝试在PC和OSX上使用ImageMagick将PDF转换为PNG——但实际上我无法在将使用我的软件的任何计算机上安... 查看详情

小试imagemagik——开发篇

=====================================================ImageMagick的使用和开发的文章:小试ImageMagik——使用篇小试ImageMagik——开发篇=====================================================本文介绍使用ImageMagick开发程序的方法。ImageMagick安装之 查看详情

求教imagemagick安装方法

imagemagick安装以linux下源码安装为例,首先到ImageMagick官方网站上下载最新的ImageMagick源码包,当前最新版本的源码包为ImageMagick-6.7.9-3.tar.gz,下载完毕后,开始进行安装。首先,进入文件下载目录,解压源码包:复制代码代码示... 查看详情

这个rmagick的安装配置了imagemagick6.6.9,但imagemagick6.7.7-10正在使用中(代码片段)

在rails应用程序中,我有以下错误消息:ThisinstallationofRMagickwasconfiguredwithImageMagick6.6.9butImageMagick6.7.7-10isinuse.我尝试按照这篇文章中的建议卸载并安装RMagick:RMagickcomplainsitwasconfiguredwithadifferentversionofImageMagick 查看详情

rmagick安装:找不到magickwand.h(代码片段)

...poi是一次痛苦的经历。我已经使用自制软件更新了Mac上的Imagemagick版本(MacOSElCapitan版本10.11.5),用于Ruby2.3中的一个项目到RMagickImagemagick现在Ruby1.8.7中的一个旧项目拒绝使用错误消息“这个RMagick的安装配置了ImageMagick6.8.9但ImageMa... 查看详情

如何在 Windows 7 上安装 ImageMagick 以与 PHP 一起使用 (3)

】如何在Windows7上安装ImageMagick以与PHP一起使用(3)【英文标题】:HowtoinstallImageMagicktousewithPHPonWindows7(3)【发布时间】:2014-01-2510:33:01【问题描述】:还有其他关于如何在Windows7上安装Imagick的主题,但到目前为止对我没有帮助。(... 查看详情

imagemagick图片处理命令

安装:进入www.imagemagick.org下载与系统匹配的安装包,安装后配置环境变量;打开cmd(windows系统)键入magick-version出现版本信息则表示安装成功。注:在linux中安装时要使用yum-yinstallImageMagick,linux中可以使用,版本6中使用convert命令(pd... 查看详情

将 ImageMagick 和 GhostScript 与 nuget 一起使用

】将ImageMagick和GhostScript与nuget一起使用【英文标题】:UsingImageMagickandGhostScriptwithnuget【发布时间】:2017-05-1611:47:36【问题描述】:我发现大多数关于将ImageMagick与ghostscript一起使用的文档都说只声明ghostscriptdll的路径,例如MagickNET... 查看详情

使用 ImageMagick 和 C# 比较两个图像

】使用ImageMagick和C#比较两个图像【英文标题】:ComparingtwoimagesusingImageMagickandC#【发布时间】:2017-03-1415:25:05【问题描述】:我想比较两张图片,然后生成并保存一张图片,该图片将显示已发现的所有差异,例如:我正在使用Image... 查看详情

使用 Paperclip 和 Jcrop 时出现 ImageMagick 的问题

】使用Paperclip和Jcrop时出现ImageMagick的问题【英文标题】:ProblemwithImageMagickwhileusingPaperclipandJcrop【发布时间】:2011-06-1402:05:34【问题描述】:我正在使用Rails3.0.7,我正在尝试关注这个Railscast:http://railscasts.com/episodes/182-cropping-imag... 查看详情

imagemagick简单记录

一、安装mac下的安装非常简单brewsearchImageMagickbrewinstallxxx安装后,可验证magicklogo:logo.gifidentifylogo.gifdisplaylogo.gif 更多安装方式参考:http://www.imagemagick.org/script/download.php二、命令介绍命令概览convert:转换图像格式和大小,模糊... 查看详情

使用 Jcrop 和 Imagemagick 裁剪图像

】使用Jcrop和Imagemagick裁剪图像【英文标题】:CroppinganimageusingJcropandImagemagick【发布时间】:2015-03-1700:24:38【问题描述】:我对-crop函数在Imagemagick中的工作方式感到困惑。我有以下来自Jcrop的值。(x1,y1),(x2,y2),widthandheight.以下命令... 查看详情