网站搜索

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


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

它能够读取和写入 200 多种图像文件,例如 JPEG、GIF、PNG、TIFF 和 Photo CD 图像格式,并且还用于生成缩略图或验证码。它还包括用于创建透明或动画 gif 图像格式的命令行选项,以及调整大小、锐化、旋转或向图像添加特殊效果等更多功能。

要通过 PHPPerl 编程语言使用 ImageMagick 工具,您需要安装 ImageMagick用于PHP的>Imagick PHP扩展和用于PerlImageMagick-Perl扩展。

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

从存储库安装 ImageMagick

首先,安装以下必需的 php-pearphp-develgcc 软件包来编译 Imagick PHP 扩展。

yum install php-pear php-devel gcc 

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

yum install ImageMagick ImageMagick-devel ImageMagick-perl

重要:ImageMagick 在 CentOS/RHEL 8 中不可用,已被 GraphicsMagick 取代,它是 ImageMagick 的一个分支。

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

dnf info GraphicsMagick
dnf install GraphicsMagick GraphicsMagick-devel GraphicsMagick-perl

接下来,通过检查其版本来验证您的系统上是否已安装 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 for 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 网络服务器。

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' 并验证扩展名。