PHP imageftbbox 图像GD库函数
-
定义和用法
imageftbbox - 给出一个使用 FreeType 2 字体的文本框 -
版本支持
PHP4 PHP5 PHP7 支持 支持 支持 注意: 此函数需要 GD 2.0.1 或更高版本(推荐 2.0.28 及更高版本)。
注意: 此函数仅在 PHP 编译时加入 freetype 支持时有效(--with-freetype-dir=DIR )。
V4.3.5 extrainfo被设为可选。
-
语法
imageftbbox ( float $size , float $angle , string $fontfile , string $text [, array $extrainfo ] )
imageftbbox() 此函数计算并返回FreeType文本的边框(以像素为单位)。 -
参数
参数 必需的 描述 size 是 字体的尺寸。根据 GD 的版本,为像素尺寸(GD1)或点(磅)尺寸(GD2)。 angle 是 角度,以度为单位,将测量文本。 fontfile 是 TrueType字体文件的名称(可以是URL)。 根据PHP使用的GD库版本,它可能会尝试通过在文件名后附加'.ttf'并沿库定义的字体路径搜索以“/”开头的文件。 text 是 要测量的字符串。 extrainfo 否 - linespacing - float - 定义绘图线间距
-
返回值
imageftbbox() 返回一个包含8个元素的数组,这些元素代表四个点,从而形成文本的边界框:- 0 左下角,X位置
- 1 左下角,Y位置
- 2 右下角,X位置
- 3 右下角,Y位置
- 4 右上角,X位置
- 5 右上角,Y位置
- 6 左上角,X位置
- 7 左上角,Y位置
无论角度如何,这些点都相对于文本,因此“左上”是指在左上角水平查看文本。 -
示例
// Create a 300x150 image $im = imagecreatetruecolor(300, 150); $black = imagecolorallocate($im, 0, 0, 0); $white = imagecolorallocate($im, 255, 255, 255); // Set the background to be white imagefilledrectangle($im, 0, 0, 299, 299, $white); // Path to our font file $font = './DejaVuSans.ttf'; // First we create our bounding box $bbox = imageftbbox(10, 0, $font, 'The PHP Documentation Group'); // This is our cordinates for X and Y $x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 5; $y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5; imagefttext($im, 10, 0, $x, $y, $black, $font, 'The PHP Documentation Group'); // Output to browser header('Content-Type: image/png'); imagepng($im); imagedestroy($im);
-