Учебник РНР
Назад Вперёд

imagettftext

(PHP 3, PHP 4)

imagettftext - записывает текст на изображение с использованием шрифтов TrueType.

Описание

array imagettftext (resource image, int size, int angle, int x, int y, int col, string fontfile, string text)

imagettftext() рисует строку text на изображении image, начиная с координат x, y (верхний левый угол обозначается 0, 0), на угол angle цветом col, с использованием файла шрифта TrueType fontfile. В зависимости от используемой в РНР версии библиотеки GD, если fontfile не начинается с ведущего '/', '.ttf' будет присоединено к имени файла, а библиотека будет пытаться искать файл с таким именем по всему пути шрифтов, определённому для библиотеки.

Координаты x, y будут определять базовую точку/basepoint первого символа (ориентировочно - левый верхний угол первого символа). Это отличается от imagestring(), где x, y определяют верхний правый угол первого символа.

Angle дан в градусах, где 0 градусов это чтение текста слева направо (направление 3 часа), а более высокие значения представляют ротацию против часовой стрелки (т.е. значение 90 должно дать чтение текста снизу вверх).

Fontfile это путь к используемому вами TrueType-шрифту.

Text это текстовая строка, которая может включать символьные последовательности UTF-8 (в форме {) для доступа к символам за пределами первых 255.

Col это индекс цвета. Использование отрицательных значений даёт эффект отключения antialiasing.

imagettftext() возвращает массив из 8 элементов, представляющих 4 точки, образующих бокс текста. Порядок точек таков: нижняя левая, нижняя правая, верхняя правая, верхняя левая. Эти точки относительно текста, вне зависимости от угла, так что "верхний левый" означает верхний левый угол, когда вы смотрите на текст горизонтально.

Вот пример скрипта, производящего чёрный GIF 400x30 пикселов со словами "Testing..." белым шрифтом Arial.

Пример 1. imagettftext

<?php
header ("Content-type: image/gif");
$im = imagecreate (400, 30);
$black = imagecolorallocate ($im, 0, 0, 0);
$white = imagecolorallocate ($im, 255, 255, 255);
imagettftext ($im, 20, 0, 10, 20, $white, "/path/arial.ttf", "Testing...Omega: &#937;");
imagegif ($im);
imagedestroy ($im);
?>

Эта функция требует библиотек GD и FreeType.

См. также imagettfbbox().


Назад Оглавление Вперёд
imagettfbbox Вверхimagetypes