PHPで画像処理
こんにちは。久々のブログになりました、牧野です。
 先日、色についての話題が出てきていたので、今回はPHPでできる画像処理について書きます。
 PHPでは画像を扱える環境が整いさえすれば、簡単に画像処理のプログラムを作ることができます。今回はGDを使用します。
 必要となるライブラリは、
 gd(PHPにバンドルされているものを使う場合はいりません)
 libpng (pngを使う場合)
 libjpeg (jpegを使う場合)
 freetype (文字画像を扱う場合)
 です。
 以下Linuxでソースコンパイルの場合ですが、パッケージを使うと楽にインストールできます。
 パッケージ名を
 gd-devel
 libpng-devel
 libjpeg-devel
 freetype-devel
 と、-develをつけたパッケージ名で指定するのがポイントです。
 コンパイルオプションは、自分の環境(CentOS)の場合、
 --with-gd
 --with-jpeg-dir=/usr 
 --with-png-dir=/usr 
 --with-freetype-dir=/usr (freetype2の場合) 
 --enable-gd-native-ttf(綺麗なフォントを使うため)
 --enable-gd-jis-conv(日本語フォントを使うため)
 を加えています。
 インストールできたら、phpinfo()等でGDの項目を確認しておきます。
環境が整えば、後は好きなプログラムを作るだけです。マニュアルの関数一覧、image関数のページを見ると、いろんな関数が用意されていることがわかります。初めての人は一度見てみて下さい。工夫次第で、いろんなことができそうな感じがしますよね!
 僕は、画像にモザイクをかけるプログラムを作ってみました。
 アップした画像に指定した大きさのモザイクをかけて表示します。
 あんまり綺麗なプログラムではないので、参考程度に。。動かす場合も、自己責任でお願いします。
 画像処理プログラムサンプル
 アシアルのロゴ画像に使ってみると、、、
 
 こんな感じになります。
 こういったのが簡単に作れるのがPHPのいいところだなと、改めて思いました!
 興味ある人は、何か作ってみると面白いと思います。
ちなみに、画像処理用のライブラリもあって、そういったのを使えばもっと楽になるのかな。あと、imagickのモジュールもあって、そちらの方が高機能そうです。




