☛ 什麼是 ImageMagick?

ImageMagick,ImageMagick 是一個功能強大的開源軟件套件,用於顯示、轉換和編輯光柵圖像文件。它可以讀取和寫入 200 多種圖像文件格式,使其成爲處理圖像的多功能工具。ImageMagick 通常用於在不同圖像格式之間進行轉換、調整圖像大小和裁剪、應用各種效果和濾鏡以及生成縮略圖等任務。它提供了一個用於批處理的命令行界面,以及用於集成到 Python、PHP 和 Perl 等編程語言中的庫。ImageMagick 由於其靈活性和廣泛的功能而廣泛用於 Web 開發、圖形設計和科學應用程序。

ImageMagick 爲圖像處理和處理提供了廣泛的功能。以下是一些主要功能:

⑴ 圖像轉換: ImageMagick 支持 200 多種圖像格式之間的轉換,包括 JPEG、PNG、GIF、TIFF 和 BMP 等流行格式。

⑵ 圖像編輯: 它爲基本圖像編輯任務提供了工具,例如調整大小、裁剪、旋轉、翻轉和調整顏色。

⑶ 圖像效果: ImageMagick 允許用戶對圖像應用各種效果和濾鏡,包括模糊、銳化、浮雕、邊緣檢測等。

⑷ 圖像合成:用戶可以將多個圖像合成在一起,將文本或圖形疊加到圖像上,並創建複雜的圖像合成。

⑸ 批處理: ImageMagick 支持批處理,允許用戶同時對多個圖像進行作。

⑹ 圖像分析:它提供用於分析圖像的工具,包括提取元數據、識別顏色、測量圖像屬性和執行基本的圖像識別任務。

⑺ 命令行界面: ImageMagick 可以通過命令行界面使用,使其易於集成到腳本和自動化工作流程中。

⑻ 編程接口: 它提供用於將 ImageMagick 集成到 Python、PHP、Perl、Ruby 等編程語言的 API 和庫。

⑼ 高質量渲染: ImageMagick 使用高質量的渲染算法來確保準確且視覺上令人愉悅的結果。

⑽ 跨平臺兼容性: ImageMagick 可用於多個平臺,包括 Linux、Windows、macOS 和各種 Unix 系統。

總體而言,ImageMagick 是一款用於圖像處理、編輯和作的多功能且功能強大的工具,適用於廣泛的應用,包括 Web 開發、圖形設計、科學分析等。

☛ 什麼是 Imagick?

Imagick 是一個 PHP 擴展,它爲 ImageMagick 庫提供包裝器,允許 PHP 開發人員使用 ImageMagick 的功能訪問和作圖像。它使 PHP 腳本能夠執行廣泛的圖像處理任務,例如調整大小、裁剪、旋轉、應用濾鏡和效果以及在不同圖像格式之間進行轉換。

藉助 Imagick,PHP 開發人員可以直接在其 PHP 應用程序中利用 ImageMagick 的強大功能,從而更輕鬆地處理圖像並以編程方式執行復雜的圖像作。此擴展通常用於 Web 開發中,用於生成縮略圖、處理用戶上傳的圖像、創建動態圖像內容等任務。

Imagick 在 PHP 中提供了一個面向對象的接口,使熟悉面向對象編程原理的開發人員可以直觀地使用。此外,它還提供了大量的文檔和示例,以幫助開發人員開始有效地將圖像處理功能集成到他們的 PHP 應用程序中。

☛ 更新 Rocky Linux 服務器

首先以 root 用戶身份登錄您的 Linux 服務器。爲此,您可以使用您選擇的任何 SSH 客戶端,例如 PuTTY 或 Linux 或 macOS 中的內置終端。成功登錄後,您將擁有對服務器的管理訪問權限。

接下來,在 Linux 終端中執行以下命令以更新您的 Rocky Linux 服務器。這將確保所有已安裝的套件包都是最新的,具有最新的安全補丁和軟件改進,從而優化系統的性能和穩定性。

[root@localhost]# dnf update -y

如果上述命令更新了您的 Linux 內核,那麼您應該重啓 Linux 服務器,然後再繼續學習此 Linux 教程。

[root@localhost]# reboot

記下 Linux 作系統和 Linux 內核的版本。

[root@localhost]# cat /etc/rocky-release
Rocky Linux release 9.1 (Blue Onyx)

[root@localhost]# uname -r
5.14.0-162.23.1.el9_1.x86_64

☛ 安裝 ImageMagick 先決條件

在這裏,我們將 ImageMagick 與 PHP-Imagick 一起安裝,以供 Web 應用程序用於圖像轉換。現在,許多讀者心中出現了一個問題:

是否必須爲 ImageMagick 設置 LAMP 服務器?

答案肯定不是。

您可以輕鬆地在 Linux 服務器上單獨安裝 ImageMagick。但據觀察,ImageMagick 最常用於 Web 應用程序。因此,我們在這裏安裝基於 PHP 的 Web 服務器。

執行以下 dnf 命令以在 Rocky Linux 9 上安裝 Apache 和 PHP。

[root@localhost]# dnf install -y httpd php-fpm

啓用並啓動 Apache 和 PHP 服務。

[root@localhost]# systemctl enable --now httpd php-fpm
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.

爲確保您的網站可通過網絡訪問,允許 HTTP 服務通過 Linux 防火牆至關重要。通過執行此作,您可以在端口 80 上啓用傳入流量,這是向用戶提供網頁所必需的。如果防火牆阻止 HTTP 流量,則無法從外部網絡訪問您的網站。按照必要的步驟配置防火牆設置,確保 HTTP 服務已正確啓用,並且您的網站可以不受任何限制地訪問。

[root@localhost]# firewall-cmd --permanent --add-service=http
success
[root@localhost]# firewall-cmd --reload
success

☛ 安裝第三方 Yum 存儲庫

ImageMagick 可通過 EPEL ( Enterprise Linux 的額外軟件包 ) 存儲庫獲得,該存儲庫提供了默認 Linux 存儲庫中未包含的其他軟件包。要訪問和安裝 ImageMagick,您首先需要在系統上啓用 EPEL 存儲庫。該存儲庫包含各種有用的工具和實用程序,包括 ImageMagick,這些工具和實用程序對於 Linux 服務器上的各種任務至關重要。要啓用 EPEL 存儲庫,只需執行以下命令即可。啓用後,您將能夠輕鬆地直接從 EPEL 安裝 ImageMagick 和其他軟件包。

[root@localhost]# dnf install -y epel-release

此外,您還可以啓用 CRB  ( CodeReady Builder ) yum 存儲庫。請注意,在 Rocky Linux 9 中,Power Tools 存儲庫已被 CRB 存儲庫取代。啓用執行以下 Linux 命令的 CRB 存儲庫。

[root@localhost]# /usr/bin/crb enable
Enabling CRB repo
CRB repo is enabled and named: crb

爲新安裝的 yum 存儲庫構建 yum 緩存。

[root@localhost]# dnf makecache

☛ 在 Linux 上安裝 ImageMagick 套件

現在所有必要的存儲庫都已成功設置,您可以在您的 Linux 系統上安裝 ImageMagick。啓用 EPEL 存儲庫後,該過程將變得簡單明瞭。您可以通過在終端中調用一個簡單的命令來輕鬆安裝 ImageMagick 及其所有依賴項。這將確保下載並安裝最新版本的 ImageMagick,從而允許您在服務器上利用其強大的圖像處理功能。按照下面的命令完成安裝並啓動 ImageMagick。

[root@localhost]# dnf install -y ImageMagick ImageMagick-devel

檢查 Magick-config 的版本以驗證 ImageMagick 的安裝。

[root@localhost]# Magick-config --version
6.9.12-82 Q16

☛ 安裝 Imagick ( PHP 擴展 )

PHP Imagick 是一個 PHP 擴展,用於使用 ImageMagick API 創建和修改圖像。您需要安裝 PHP 開發和 PHP Pear 來安裝和管理 PHP 擴展。

[root@localhost]# dnf install -y php-devel php-pear make

現在,您可以通過執行 pecl 命令來安裝 PHP Imagick。

[root@localhost]# pecl install imagick

將 Imagick 擴展名添加到 php.ini 文件。

[root@localhost]# echo "extension=imagick.so" > /etc/php.d/20-imagick.ini

重啓 Apache 和 PHP 服務以加載 Imagick 模組。

[root@localhost]# systemctl restart httpd php-fpm

執行以下命令以驗證 Imagick 模組是否加載成功。

[root@localhost]# php -m | grep imagick
imagick