PHP-根据字符串和所用字体计算字符串所占宽高

[ 2020-12-08 16:29:47 | 作者: admin ]
字号: | |
由于用GD画图, 需要把一段文字在一个框内居中, 但是文字的宽度如果用strlen($str) * $font_size来计算的话, 由于文字不是等宽高的, 所以会导致偏离, 最后选用的GD库的imagettfbbox()函数, 其原型如下

array ImageTTFBBox(int size, int angle, string fontfile, string text);

其中返回一个数组, 有八个元素, 描述了四个角的坐标

0 左下角 X 位置

1 左下角 Y 位置

2 右下角 X 位置

3 右下角 Y 位置

4 右上角 X 位置

5 右上角 Y 位置

6 左上角 X 位置

7 左上角 Y 位置

$pos = imagettfbbox(self::FONT_SIZE , 0, self::FONT_FILE, $name);

其中self::FONT_SIZE、self::FONT_FILE分别为类中配置的字体大小和所用字体

字符串所占宽度为:

  $pos[2] - $pos[0]

字符串所占高度为:

  $pos[5] - $pos[3]
评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2740

这篇日志没有评论。

此日志不可发表评论。