8

この問題を知っていることは、前に PHPアップデートでimagettftext()およびimagefttext()関数を使用したカーニングの問題に対処しまし たが、解決策はありません。

PHP5.3は、テキストを印刷するときにカーニングの問題があるようです。

次の例(フォント:Ubuntu-M.ttf)の「x」を見てください。

PHP5.2、ubuntu(良い)

ここに画像の説明を入力してください

PHP5.3.2、ubuntu(さらに悪いことに、xは太っている)

ここに画像の説明を入力してください

PHP5.3.2、MAMP OSX(ひどい)

ここに画像の説明を入力してください

これに対する解決策はありますか?

5.3.6をインストールしている人は、これを試してみてください。

よろしく、// t

4

1 に答える 1

2

フォント(Ubuntuフォントファミリーのバージョン0.71.2)をダウンロードした後、自宅のマシンで真ん中のイメージを複製しようとしました。Arch Linux、x86_64、PHP 5.3.6、GD 2.0.34(バンドル)、Suhosinパッチ、FreeType2.4.4。eとxの両方でカーニングをしたほうがいいです。

画像生成:

<?php
$img = imagecreatetruecolor(158, 72);
imagesavealpha($img, true);

$bg = imagecolorallocatealpha($img, 0, 0, 0, 127);
$black = imagecolorallocate($img, 0, 0, 0);
imagefill($img, 0, 0, $bg);

$text = "testar text"; // - was attempt at no aa, like example
imagettftext($img, 24, 0, 0, 36, -($black), 'Ubuntu-M', $text);
$text = "med text";
imagefttext($img, 24, 0, 12, 72, $black, 'Ubuntu-M', $text);

imagepng($img, 'test.png');
imagedestroy($img);
?>

出力:

問題の2番目の画像を複製する試みの出力

于 2011-06-18T06:00:48.717 に答える