1

TTF と PHP GD 2.x に奇妙な問題があります。

上部の位置 100 にサイズ 45px の TTF があります。テキストの上部は、(画像内の) 行と完全に一致しています。

しかし、フォントのサイズを変更すると、テキストが線に合わなくなります。

サイズが 20px の場合、テキストの上部の値から 5 を引く必要があり、フォントのサイズが 300px の場合、完全な配置を得るには、上部の値に 56 を追加する必要があります。

さらに悪いことに、フォント (別の TTF) を変更すると、同じですが番号が異なります。

私は何か見落としてますか。テキストのサイズに応じてテキストの上部の値を変更する必要があるのはなぜですか?また、あるフォントの数値が別のフォントの数値と異なるのはなぜですか?????

そして、それがすべて正常であれば。テキストを常に行に揃える式を取得するにはどうすればよいですか。

ここでいくつかの数字....

Font 1 . size 20 = top 95, size 45 = top 100, size 300 = top 156.
Font 2 . size 20 = top 91, size 193 = top 100, size 300 = top 105. 

私は数学があまり得意ではありません....悲しい

ありがとう

明細書

4

1 に答える 1

0

フォントのメトリックを照会できる Imagick を使用する方がよいでしょう。おそらく、GD から取得できないフォントの x-height またはキャップの高さの値が必要です。

これらの値を取得したら、すべてを整列させるために必要な垂直方向のオフセットを適切に計算できます。

于 2013-07-26T20:03:09.950 に答える