XAMPP に ImageMagick をインストール

XAMPP

WordPressのPDF関連のプラグイン(PDF Image Generator、PDF Thumbnail Generatorなど)は、PDFファイルからサムネイル画像を自動生成する。そのためには、ImageMagickが必須となる。

そこで、普段の開発環境のXAMPPにImageMagickをインストールする。

俺のXAMPPのPHPのバージョンは8.2。8.2なら下記の手順でうまくいく(俺はうまくいった)。
ただ、同じ8.Xでも、8.1と8.3では若干手順が異なるので、その旨も書いておく。ただし、実証はしていないので、前もって断っておく。

ImageMagickのダウンロード

PHP8.1の場合

PECLの imagick ページにいく。
https://pecl.php.net/package/imagick

2024/2現在、最新版は 3.7.0 なので、3.7.0のDLLに進む。
https://pecl.php.net/package/imagick/3.7.0/windows

PHP8.1用のDLLには、x64版とx86版、それと、Non Thread Safe(NTS) と Thread Safe(TS) の4種類ある。

どのDLLを使えばいいかは、phpinfo()を実行して確かめる。
Architecture が x64 ならx64版。PHP Extention Build が TS ならTS版となる。

俺の環境は、x64 の TS なので、「8.1 Thread Safe(TS) x64」のDLLとなる。

PHP8.2の場合

では、PHP8.2の場合はどうするか?

現在の段階では、公式のDLLはない。しかし、GitHub上に有志の方々が、3.7.0をPHP8.2用をビルドしてくれている(非常にありがたい)のでこれをダウンロードする。
まぁ、公式ではないので、あくまでも自己責任で開発環境用としたほうがいいだろう。
https://github.com/Imagick/imagick/issues/573#issuecomment-1747296516

PHP8.3の場合

PHP8.3も公式のDLLはない。PHP8.2と同じようにGitHubにPHP8.3用のビルド版があるので、これをダウンロードする。
https://github.com/Imagick/imagick/issues/573#issuecomment-1827616798

DLLの解凍

ダウンロードしたZIPを解凍するとImageMagick本体となる。
これを、どこでもいいので適当なフォルダに移動する。
俺は、PHP8.2用をダウンロードしたので、XAMPPのPHPのextフォルダに移動した。
c:\xampp8.2.4\php\ext\php_imagick_3.7.0-php_8.2-vs16-x64

PATHの設定

PHP拡張用のDLLからImageMagick本体のDLLを読み込めるように、PATHを設定する。

Windows上で「設定」-「システム」-「バージョン情報」-「システムの詳細設定」から「環境変数」をクリックする。

「Path]を選んで「編集」をクリックする。

「新規」をクリックして、解凍して移動した適当なフォルダ名を入力し「OK」をクリックする。
もとのダイアログに戻るので「OK」をクリックして終了。

PHPの拡張用DLLの設定

PHP8.1の場合

解凍したImageMagick本体の中にある、PHP拡張用DLL(php_imagick.dll)を、XAMPのPHPのextフォルダに移動する。

PHP8.2、PHP8.3の場合

解凍したImageMagick本体の中にある、Thread Safe版なら「php_imagick_ts.dll」、Non Thread Safe版なら「php_imagick_nts.dll」を、XAMPPのPHPのextディレクトリに移動し、「php_imagick.dll」に名称変更する。

PHP8.1、PHP8.2、PHP8.3共に、phpのextフォルダに、php_imagick.dll を置くようになる。

php.iniの変更

php.iniに下記を追加する

extension=imagick

XAMPPの再起動とインストールの確認

Apacheを再起動する。
俺の場合は、PATHがうまく通ってくれなかったので、XAMPPのコントロールパネルを再起動した。

再び、phpinfo()を実行し、imagickの項目が表示されればインストール完了。

「Imagick compiled with ImageMagick version( imagick の想定している ImageMagick のバージョン)」と「Imagick using ImageMagick library version( ImageMagick 本体の ImageMagick のバージョン)」が一致していることを確認する。

ここまでの手順でImageMagickは正常にインストールされ、ImageMagickを使った画像処理ができるようになる。

Ghostscript のインストール

しかしながら、ImageMagick でPDFファイルの読み書きができない。
ImageMagickでPDFファイルの読み書きを行うには、Ghostscriptが必要になる。

Ghostscriptのダウンロードサイトにいく。
https://ghostscript.com/releases/gsdnld.html

俺のWindowsは64bitなので、「Ghostscript 10.02.1 for Windows (64 bit)」からインストーラをダウンロードする。

ダウンロードした gs10021w64.exe  をダブルクリックしてインストールを開始する。

「Welcome to GPL Ghostscript Setup」で「Next]をクリック。

「Licence Agreement」で「I Agree」をクリック。

「Choose Install Location」で、インストールするフォルダを指定して「Install」クリック。
俺はインストールフォルダはデフォルトのままでインストールした。

「Completing GPL Ghostscript Setup」で「Finish]をクリック。

最後に「Installation Complete」を出るので「OK」をクリック。

これで、ImageMagickからPDFファイルの読み書きができ、当初の目的だった、WordPressのPDF関連のプラグイン(PDF Image Generator、PDF Thumbnail Generatorなど)がXAMPP上で動くようになった。

参考サイト

下記のサイトを参考にさせていただいた。Thank you very much!!

タイトルとURLをコピーしました