imageftbbox

(PHP 4 >= 4.0.7, PHP 5, PHP 7)

imageftbbox Определение границ текста выводимого шрифтом freetype2

Описание

imageftbbox ( float $size , float $angle , string $fontfile , string $text [, array $extrainfo ] ) : array

Эта функция рассчитывает и возвращает рамку (границы) FreeType текста.

Замечание:

imageftbbox() - это расширенный вариант imagettfbbox(), который дополнительно поддерживает extrainfo.

Список параметров

size

Размер шрифта в типографских пунктах.

angle

Угол в градусах в котором text должен быть измерен.

fontfile

Имя файла TrueType шрифта (может быть URL). В зависимости от версии GD библиотеки функция может попытаться найти файлы, не начинающиеся с '/' путем добавления '.ttf' в конец имени файла и поиска по адресу заданному в библиотеке.

text

Измеряемая строка.

extrainfo

Возможные ключи массива extrainfo
Ключ Тип Значение
linespacing float Определяет рисование подчеркиваний

Возвращаемые значения

imageftbbox() возвращает массив из 8 элементов, представляющих четыре точки в углах рамки обрамляющей текст:

0 нижний левый угол, X координата
1 нижний левый угол, Y координата
2 нижний правый угол, X координата
3 нижний правый угол, Y координата
4 верхний правый угол, X координата
5 верхний правый угол, Y координата
6 верхний левый угол, X координата
7 верхний левый угол, Y координата

Точки расположены относительно текста text и не зависят от угла angle, таким образом "верхний левый" означает верхняя левая точка текста, если расположить текст горизонтально.

Примеры

Пример #1 Пример использования imageftbbox()

<?php
// Создание изображения 300x150
$im imagecreatetruecolor(300150);
$black imagecolorallocate($im000);
$white imagecolorallocate($im255255255);

// установка белого фона
imagefilledrectangle($im00299299$white);

// путь к файлу шрифта
$font './arial.ttf';

// создаем рамку вокруг текста
$bbox imageftbbox(100$font'Группа документирования PHP');

// наши координаты для X и Y
$x $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 5;
$y $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;

imagefttext($im100$x$y$black$font'Группа документирования PHP');

// вывод в броузер
header('Content-Type: image/png');

imagepng($im);
imagedestroy($im);
?>

Примечания

Замечание: Эта функция доступна только в случае, если PHP был скомплирован с поддержкой freetype (--with-freetype-dir=DIR )

Смотрите также

  • imagefttext() - Нанесение текста на изображение, используя шрифты FreeType 2
  • imagettfbbox() - Получение параметров рамки обрамляющей текст написанный TrueType шрифтом