CakePHPでPDFファイルを画像に変換するために、ImageMagickをインストールする必要がありました。
で、いろんなエントリーでWindowsのxampp環境にImageMagickをインストールするのは結構大変、と書いてあったのですが、確かにわかりにくかったのでメモ。
こちらのエントリーが一番簡潔にわかりやすくまとまっていました。
XAMPP環境でImageMagickをインストール | Styler
下記説明もほぼ同じなのですが、Ghostscriptを日本語版にしています。
VC++2008ランタイムのインストール
32bit Windowsの場合
Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ(x86)インストーラ
http://www.microsoft.com/ja-jp/download/details.aspx?id=5582
64bit Windowsの場合
Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ (x64) インストーラ
http://www.microsoft.com/ja-jp/download/details.aspx?id=2092
インストーラでインストールします。
Ghostscriptのインストール
Ghostscript 9.07 + GSview 5.0 の日本語版
Ghostscript 9.07 (日本語版)インストーラ
ftp://akagi.ms.u-tokyo.ac.jp/pub/TeX/win32-gs/gs907w32full-gpl.exe
インストーラでインストールします。
PDFやPostscriptを扱わない場合には必要ありません。
※注意!
64bit Windowsの場合にSourceforgeなどからgs907w64.exeなど、64bit用のインストーラを持ってきてインストールすると、PHPからのコンバートはうまく動かないようです。
なので、64bit Windowsの場合でもPHPから使う場合には32bit用のものをインストールしましょう。これでも動きます。
(参考)
ImageMagick • View topic - PDF to image conversion not working in php
http://www.multipole.org/discourse-server/viewtopic.php?f=10&t=22174
PHPにImageMagickのdllを組み込み
Imagick Windows Builds « Mikko’s blog
公式サイトではなく一般のブログなんですが、この人がImageMagickのPHP5.3/5.4用Windowsバイナリの配布をしてくれています。他のエントリーでもみなこちらのバイナリの利用をする方法が紹介されています。
ここから必要なDLLがまとめられている下記 imagick-php54-php53.tgz をダウンロードします。
ImageMagick PHP5.4/5.3 Windows binary
http://valokuva.org/~mikko/imagick-php54-php53.tgz
dllのコピー
imagick-php54-php53.tgz を展開します。
- ImageMagick-6.8.0-vc9
ImageMagick-6.8.0-vc9はフォルダごと、あとPHPのバージョンに合わせて、例えば自分のxamppはPHP-5.4なので「php54」フォルダの中の
- php_imagick_ts.dll
をphpの拡張フォルダ
c:\xampp\php\ext
にコピーします。
php.iniの修正
のDynamic Extensions設定「extensions=…」が並んでいる最後あたりにImageMagickのdll
extension=php_imagick_ts.dll
を読み込む設定を追加します。
組み込み確認
VC++2008ランタイムを組み込んだらPC自体の再起動が必要で、ImageMagickのdll組み込んだらapacheの再起動も必要です。
なので一旦PC自体を再起動しておくのがよいです。
xamppのphpinfoのページ
http://localhost/xampp/phpinfo.php
を開いて
imagick
の項目があるかを確認します。
(関連)
PHPでImageMagickを使う時のトラブルと解決方法 - モーグルとカバとパウダーの日記
http://d.hatena.ne.jp/stealthinu/20130708/p1