====== PHPのGDライブラリで荒い縮小画像を綺麗にする ======
DokuWiki でドキュメントを作成した時のこと、元は同じ画像でも、下書き用WEBサーバで表示する画像に比べて、別の公開用WEBサーバで表示すると非常に荒く表示された。元ファイルは ubuntu でキャプチャした 784x664 ピクセルの同じ画像。これを、
タグで縮小して表示しているだけである。
^ 下書き用WEBサーバ(きれい) ^ 公開用WEBサーバ(荒い) |
|{{:freebsd7.1r:php5:kirei.png|}}|{{:freebsd7.1r:php5:arai.png|}}|
ふと、昔、どこかのサイトで GD Library に関する記事を目にしたのを思い出した。
早速、確認する。以下のコードのみを書いたファイル ( a.php などで保存 ) を両方のサーバで作り、それぞれブラウザで表示。
{{:freebsd7.1r:php5:phpinfo-gd.png?310}}
下書き用WEBサーバのみに GD Library が入っている。たぶん原因はこれだろう・・・と推測する。
であれば、公開用WEBサーバに GD Library をインストールすればよいことになる(GD Library が原因ならば、だが)。
GD Library は php4-extensions または、php5-extensions に入っている。自分が使っている PHP のバージョンに合わせて入れればよい。
%su -
Password:
# cd /usr/ports/lang/php5-extensions
# make config
{{:freebsd7.1r:php5:php-gd-library.png?300}}
こ~んな画面が表示されるので、GD library support のところを [X] にする。
続けて、インストールする。
# make reinstall
そして、apache を再起動。
# /usr/local/etc/rc.d/apache22 restart
ブラウザで DokuWiki を確認すると綺麗になった。めでたし、めでたし。