[PHP-users 2002] PHP4.0.6+GD2.0.1+freetype2.0.1でTrueTypeフォントが表示できません

清水 泰之 php-users@php.gr.jp
Thu, 13 Sep 2001 10:42:12 +0900


初めまして。過去に何度も出ている話題ですが、
PHP4.0.6+GD2.0.1+freetype2.0.1でTrueTypeフォントが表示できません。
過去ログを参照してみたのですが、わかりませんのでもう一度お願いします。

以下、その表示ソースです。
<?
$im = imagecreate(170,50);
$blue=imagecolorallocate($im,0,0,255);
$white=imagecolorallocate($im,255,255,255);
imagerectangle($im,0,0,169,49,$blue);
//$font="/usr/X11R6/lib/X11/fonts/TrueType/wadalab-gothic.ttf";
$font="/usr/X11R6/lib/X11/fonts/TrueType/watanabe-mincho.ttf";
$str="日本語";
imagettftext($im,25,0,20,30,$white,$font,$str);
header("Content-type: image/png");
header("Cache-control: no-cache");
imagepng($im);
imagedestory($im);
?>

四角形の矩形は表示されるのですが、日本語は表示されません。
imagettftextをimagestringにして、表示させる文字列を1バイトコードにするとO
Kです。
(フォントIDは組み込みフォントを使用します)

phpinfo()でgdの欄を表示させると
GD Support   enabled
GD Version   2.0 or higher
FreeType Support enabled
FreeType Linkage with freetype
JPG Support   enabled
PNG Support   enabled
WBMP Support  enabled
となっています。

GDのコンパイルオプションは
CFLAGS = -g -DHAVE_LIBPNG -DHAVE_LIBJPEG -DHAVE_LIBFREETYPE
LIBS = -lgd -lpng -lz -ljpeg -lfreetype -lm
でコンパイルでき、/usr/lib/libgd.aが存在します。

freetypeのインストールは
make setup
make
make installで/usr/local/lib/libfreetype.aが存在します。

phpのインストールは
buildconf
configure --without-mysql --with-apxs=/usr/local/apache/bin/apxs
 --with-gd=/usr --with-freetype-dir=/usr/local
 --with-jpeg-dir=/usr --with-png-dir=/usr
 --enable-gd-native-ttf --with-zlib-dir=/usr
 --with-tiff-dir=/usr その他のオプションは省略します
make
make install
でコンパイルできます。

以上です。RPMでインストール済みのGDやfreetypeは事前に削除
しています。

過去ログを参照してphp-4.0.6/ext/gd/gd.cの2665行目を
if HAVE_LIBGD20 | HAVE_LIBFREETYPE
に変更してみましたがうまくいきません。


環境は、
Linux7.0.1J
PHP4.0.6
gd2.0.1
freetype2.0.1
です。

よろしくお願いします。


清水 泰之
shimizu@kent-jp.net