在RHEL/CentOS和Fedora上安装ImageMagick(图像处理)工具

ImageMagick 是一款免费开源的简单软件套件,用于任何类型的图像处理,用于创建、编辑、转换、显示图像文件。

它能够读取和写入超过200种图像文件,如JPEG、GIF、PNG、TIFF和Photo CD图像格式,还用于缩略图或验证码生成。它还包括用于创建透明或动画 GIF 图像格式等许多功能,如调整大小、锐化、旋转或向图像添加特殊效果。

要使用 ImageMagick 工具与 PHPPerl 编程语言,您需要安装 ImageMagickImagick PHP 扩展程序和 PHPImageMagick-Perl 扩展程序和 Perl

Imagick 是一个简单的 PHP 扩展程序,用于使用 ImageMagick API 程序创建和修改图像。名称上存在混淆,因为人们认为 ImageMagickImagick 是相同的,但您可以在不安装 Imagick 扩展程序的情况下使用 ImageMagick,但您需要两者都安装在您的机器上才能使用和运行它。

从仓库安装 ImageMagick

首先,安装以下先决条件 php-pearphp-develgcc 软件包来编译 Imagick PHP 扩展程序。

# yum install php-pear php-devel gcc 
Install PHP Extensions in CentOS 8

安装了php-pearphp-develgcc软件包后,您现在可以使用yum命令安装ImageMagick软件,以支持PHPPerl

# yum install ImageMagick ImageMagick-devel ImageMagick-perl

重要:在CentOS/RHEL 8中,ImageMagick不可用,而是用GraphicsMagick替代,后者是ImageMagick的一个分支。

要在CentOS/RHEL 8上安装GraphicsMagick,请运行以下命令。

# dnf info GraphicsMagick
# dnf install GraphicsMagick GraphicsMagick-devel GraphicsMagick-perl
Install GraphicsMagick in CentOS 8

接下来,通过检查其版本来验证系统上是否已安装ImageMagick

# convert --version
 
Version: ImageMagick 6.7.8-9 2019-02-01 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP    

CentOS/RHEL 8用户可以运行以下命令来验证系统上安装的GraphicsMagick的版本。

# gm version

GraphicsMagick 1.3.33 2019-07-20 Q16 http://www.GraphicsMagick.org/
Copyright (C) 2002-2019 GraphicsMagick Group.
Additional copyrights and licenses apply to this software.
See http://www.GraphicsMagick.org/www/Copyright.html for details.

从源代码安装ImageMagick 7

要从源代码安装ImageMagick,您需要一个具有编译器和相关开发工具的适当开发环境。如果您的系统上没有所需的软件包,请按照以下所示安装开发工具。

# yum groupinstall 'Development Tools'
# yum -y install bzip2-devel freetype-devel libjpeg-devel libpng-devel libtiff-devel giflib-devel zlib-devel ghostscript-devel djvulibre-devel libwmf-devel jasper-devel libtool-ltdl-devel libX11-devel libXext-devel libXt-devel lcms-devel libxml2-devel librsvg2-devel OpenEXR-devel php-devel

现在,使用以下wget命令下载ImageMagick源代码的最新版本并进行提取。

# wget https://www.imagemagick.org/download/ImageMagick.tar.gz
# tar xvzf ImageMagick.tar.gz

配置和编译ImageMagick源代码。根据您的服务器硬件规格,这可能需要一些时间来完成。

# cd ImageMagick*
# ./configure
# make
# make install

验证ImageMagick编译和安装是否成功。

# magick -version

Version: ImageMagick 7.0.8-28 Q16 x86_64 2019-02-19 https://imagemagick.org
Copyright: © 1999-2019 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI OpenMP 
Delegates (built-in): bzlib djvu fontconfig freetype jng jpeg lzma openexr pangocairo png tiff wmf x xml zlib

安装Imagick PHP扩展

接下来,编译Imagick用于PHP扩展。只需运行以下‘pecl‘命令。它将在/usr/lib/php/modules目录下安装ImageMagickimagick PHP扩展模块‘imagick.so‘。如果您使用的是64位系统,则模块目录路径将是/usr/lib64/php/modules

注意:它会要求您提供Imagemagick安装前缀,只需按回车键自动检测。

# pecl install imagick 

downloading imagick-3.4.3.tgz ...
Starting to download imagick-3.4.3.tgz (245,410 bytes)
...................................................done: 245,410 bytes
19 source files, building
running: phpize
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
Please provide the prefix of Imagemagick installation [autodetect] : 

现在,将‘imagick.so‘扩展添加到‘/etc/php.ini‘文件中。

echo extension=imagick.so >> /etc/php.ini

接下来,重新启动Apache web服务器。

# service httpd restart

通过运行以下命令验证Imagick PHP扩展。您将看到类似下面的Imagick扩展。

# php -m | grep imagick

imagick

安装GMagick PHP扩展

运行以下命令来编译和安装GMagick PHP扩展

# cd /usr/local/src
# wget https://pecl.php.net/get/gmagick
# tar xfvz gmagick
# cd gmagick-*
# phpize
# ./configure
# make
# make install

现在,将‘gmagick.so‘扩展添加到‘/etc/php.ini‘文件中。

# echo extension=gmagick.so >> /etc/php.ini

接下来,重新启动Apache web服务器。

# systemctl restart httpd

通过运行以下命令验证gmagick PHP扩展。

# php -m | grep gmagick

gmagick

或者,您可以在网站根目录下创建一个名为‘phpinfo.php’的文件(例如:/var/www/html/)。

# vi /var/www/html/phpinfo.php

添加以下代码。

<?php

     phpinfo ();
?>

打开您喜欢的网络浏览器,输入‘http://localhost/phpinfo.php’或‘http://ip-addresss/phpinfo.php’并验证扩展名。

Check Imagick Version
Verify Gmagick PHP Extension

Source:
https://www.tecmint.com/install-imagemagick-in-linux/