imagefttext - Нанесение текста на изображение, используя шрифты FreeType 2
Вернуться к: GD и функции для работы с изображениями Функции
imagefttext
(PHP 4 >= 4.0.7, PHP 5, PHP 7)
imagefttext — Нанесение текста на изображение, используя шрифты FreeType 2
Описание
$image
, float $size
, float $angle
, int $x
, int $y
, int $color
, string $fontfile
, string $text
[, array $extrainfo
] )Список параметров
-
image
-
Ресурс изображения, полученный одной из функций создания изображений, например, такой как imagecreatetruecolor().
-
size
-
Размер шрифта в пунктах.
-
angle
-
Угол в градусах, 0 градусов означает расположение текста слева направо. Положительные значения означают поворот текста против часовой стрелки. Например, текст повернутый на 90 градусов нужно будет читать снизу вверх.
-
x
-
Координаты
x
иy
определяют отправную точку для первого символа текста (конкретно, левый нижний угол символа). Здесь есть отличие от функции imagestring(), в которойx
иy
определяют верхний левый угол первого символа. Например, "верхний левый" имеет координаты 0,0. -
y
-
y-координата. Это позиция базовой линии шрифта, в общем случае она не совпадает с низшей точкой в символе.
-
color
-
Индекс требуемого цвета текста, см. imagecolorexact().
-
fontfile
-
Путь к TrueType шрифту, который требуется использовать.
В зависимости от версии GD библиотеки если
fontfile
не начинается с /, то в конец названия файла будет добавлено расширение .ttf, и библиотека будет пытаться найти этот файл по адресу, определенному в настройках библиотеки.При использовании GD библиотеки версий младше 2.0.18 символ space (пробел), как и точка с запятой, использовался в качестве "разделителя путей" для различных файлов шрифтов. При использовании этой возможности будет выдаваться предупреждение: Warning: Could not find/open font. Решением такой проблемы в этих версиях может быть только исключение пробелов из путей файлов.
В большинстве случаев размещение файлов шрифтов в директории скрипта решает подобные проблемы включения файлов.
<?php
// Задание переменной окружения для GD
putenv('GDFONTPATH=' . realpath('.'));
// Имя шрифта для использования (обратите внимание на отсутствие расширения .ttf)
$font = 'SomeFont';
?> -
text
-
Текст для вставки в изображение.
-
extrainfo
-
Возможные значения массива extrainfo
Ключ Тип Значение linespacing float Определяет рисование нижнего подчеркивания
Возвращаемые значения
Эта функция возвращает массив, определяющий четыре точки рамки текста. Текст внутри этих границ начинается с левого нижнего угла и поворачивается против часовой стрелки:
0 | нижняя левая x-координата |
1 | нижняя левая y-координата |
2 | нижняя правая x-координата |
3 | нижняя правая y-координата |
4 | верхняя правая x-координата |
5 | верхняя правая y-координата |
6 | верхняя левая x-координата |
7 | верхняя левая y-координата |
Примеры
Пример #1 Пример использования imagefttext()
<?php
// Создание изображения 300x100
$im = imagecreatetruecolor(300, 100);
$red = imagecolorallocate($im, 0xFF, 0x00, 0x00);
$black = imagecolorallocate($im, 0x00, 0x00, 0x00);
// Сделаем краный фон
imagefilledrectangle($im, 0, 0, 299, 99, $red);
// Путь к ttf файлу шрифта
$font_file = './arial.ttf';
// Рисуем текст 'PHP Manual' шрифтом 13го размера
imagefttext($im, 13, 0, 105, 55, $black, $font_file, 'PHP Manual');
// Вывод изображения
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
?>
Примечания
Замечание: Эта функция нуждается в GD версии 2.0.1 или выше.
Замечание: Эта функция доступна только в случае, если PHP был скомплирован с поддержкой freetype (--with-freetype-dir=DIR )
Вернуться к: GD и функции для работы с изображениями Функции