imagettftext

(PHP 4, PHP 5, PHP 7, PHP 8)

imagettftext — Малювання тексту на зображенні шрифтом TrueType

Опис

imagettftext(    GdImage $image,    float $size,    float $angle,    int $x,    int $y,    int $color,    string $font_filename,    string $text,    array $options = []): array|false

Наносит текстtextповерх изображения, используя TrueType шрифт.

Зауваження :

До PHP 8.0.0imagefttext() - це розширений варіант imagettftext(), який додатково підтримує extrainfo. Починаючи з PHP 8.0.0, **imagettftext()**является псевдонимомimagefttext()

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

image

Об'єкт GdImage, що повертається однією з функцій створення зображень, наприклад, такий як imagecreatetruecolor()

size

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

angle

Кут у градусах, 0 градусів означає розташування тексту зліва направо. Позитивні значення означає поворот тексту проти годинникової стрілки. Наприклад, текст, повернутий на 90 градусів, потрібно буде читати знизу вгору.

x

Координати xиy визначають відправну точку першого символу тексту (конкретно, лівий нижній кут символу). Тут є відмінність від функції imagestring(), в якій xиy визначають лівий верхній кут першого символу. Наприклад, верхній лівий має координати 0,0.

y

y-координат. Це позиція базової лінії шрифту, у випадку вона не збігається з нижчою точкою в символі.

color

Індекс кольору. Використання негативних індексів створює ефект вимкненого згладжування. Дивіться imagecolorallocate()

fontfile

Шлях до шрифту TrueType, який потрібно використовувати.

Залежно від того, яка бібліотека GD завантажена в PHP, якщо параметр fontfile не починається із символу , то к имени файла будет добавлено расширение.ttf і бібліотека намагатиметься шукати це ім'я файлу за певною бібліотекою шляху шрифтів.

При роботі з бібліотекою GD версії нижче 2.0.18 як роздільник шляхів для різних файлів шрифтів буде використано символ пробілу, а не крапка з комою. Ненавмисне використання цієї особливості призведе до попередження: Warning: Could not find/open font. Єдиним коректним рішенням для цих версій бібліотек буде переміщення файлів шрифтів до директорії, що не містить пробілів.

У багатьох випадках, коли шрифт знаходиться в тому ж каталозі, що і PHP скрипт, допоможе наступний трюк.

Loading...

Зауваження :

Обратите внимание, чтоopen_basedir неприменяется кfontfile

text

Текстовий рядок у кодуванні UTF-8.

Для доступу до символів після 127го можна використовувати числові посилання (у форматі: €). Також підтримується шістнадцятковий формат (©). Рядки кодування UTF-8 можна передавати безпосередньо.

Іменовані сутності, на зразок ©, не підтримуються. Використовуйте функцію html_entity_decode(), щоб декодувати їх у рядках UTF-8.

Якщо символ не підтримується шрифтом, замість нього буде намальовано незафарбований прямокутник.

Значення, що повертаються

Повертає масив з 8 елементів, що представляють 4 точки - координати кутів рамки, що обрамляє текст. Крапки представлені в такому порядку: лівий нижній кут, нижній правий, верхній правий, верхній лівий. Кути вказані щодо тексту, тобто верхній лівий означає верхній лівий кут тексту, якщо розташувати його горизонтально. У разі виникнення помилки функція поверне false

список змін

ВерсияОпис
8.0.0Добавлен параметрoptions

Приклади

Приклад #1 Приклад використання imagettftext()****

У цьому прикладі буде створено зображення PNG з білим тлом розміром 400x30 пікселів та написом "Тест..." чорним кольором (з сірою тінню) шрифтом Arial.

Loading...

Висновок наведеного прикладу буде схожим на:

Висновок прикладу: imagettftext()

Примітки

Зауваження: Ця функція доступна лише у випадку, якщо PHP був скомпільований з підтримкою freetype (--with-freetype-dir=DIR) .

Дивіться також

  • imagettfbbox() - Отримання параметрів рамки, що обрамляє текст написаний TrueType шрифтом
  • imagefttext() - Нанесення тексту на зображення за допомогою шрифтів FreeType 2