当前位置: 首页> 函数类别大全> imagefttext

imagefttext

使用FreeType 2使用字体将文本写入图像
名称:imagefttext
分类:图像处理GD
所属语言:php
一句话介绍:使用FreeType 2使用字体将文本写入图像

imagefttext 函数

适用 PHP 版本

PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8

函数说明

imagefttext 函数用于在图像上绘制使用 FreeType 字体的文本。它允许在图像上添加自定义的文字内容,支持不同的字体、大小、颜色、角度等参数。

函数语法

imagefttext( resource $image, float $size, float $angle, int $x, int $y, int $color, string $fontfile, string $text [, array $extrainfo = array() ] )

参数

  • $image (resource): 图像资源句柄。
  • $size (float): 文本的字体大小。
  • $angle (float): 文本的旋转角度。
  • $x (int): 文本起始点的 X 坐标。
  • $y (int): 文本起始点的 Y 坐标。
  • $color (int): 用于绘制文本的颜色。通常通过使用 imagecolorallocate 函数获得。
  • $fontfile (string): 字体文件的路径。必须是一个有效的字体文件。
  • $text (string): 要绘制的文本。
  • $extrainfo (array, 可选): 附加的额外信息,可以包括像线条间距、文本方向等。

返回值

返回图像资源,或者在失败时返回 FALSE

示例

以下是使用 imagefttext 函数的一个示例:

示例代码的说明

这段代码会创建一张空白的图像,设置字体大小、颜色、旋转角度等参数,并在指定位置绘制文字。

示例代码:

// 设置背景颜色为白色
$bg_color = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $bg_color);

// 设置文本颜色为黑色
$text_color = imagecolorallocate($image, 0, 0, 0);

// 设置字体文件路径
$font = '/path/to/font.ttf';

// 使用 imagefttext 绘制文本
$text = "Hello, PHP!";
imagefttext($image, 20, 0, 10, 50, $text_color, $font, $text);

// 输出图像为 PNG 格式
header('Content-Type: image/png');
imagepng($image);

// 销毁图像资源
imagedestroy($image);
?>

说明:

  • 首先创建了一个 400x100 像素的真彩色图像。
  • 然后设置了图像的背景颜色为白色,并使用 imagefill 填充背景。
  • 接着使用 imagecolorallocate 设置文本的颜色为黑色。
  • 指定字体文件路径(请确保此路径指向一个有效的字体文件)。
  • 使用 imagefttext 函数在图像上绘制文本"Hello, PHP!",字体大小为 20,角度为 0,位置为 (10, 50)。
  • 最后通过 imagepng 函数输出图像,并销毁图像资源。
同类函数