Растрова графіка засобами PHP

Зміст

Вступ
PHP надає можливість створити й опрацювати файли зображень, виводити зображення безпосередньо у браузер. Для цього необхідно скомпілювати PHP з графічною бібліотекою GD, що містить функції для роботи з зображеннями. Щоб читати мета-дані зображень, необхідний модуль EXIF.

Примітка. При встановленні XAMP / PHP (щонайменше, починаючи з версії 8.0.2) вбудовану бібліотеку GD буде встановлено без будь-яких дій з боку користувача.

Формати, підтримувані бібліотекою GD

ФорматЧитанняЗапис
JPEG так так
PNG так так
GIF так так
XBM так так
XPM так ні
WBMP так так
WebP так так
BMP так так

Запис BMP — з GD 2.1.0 і PHP 7.2.0. Вичерпний перелік підтримуваних форматів можна встановити за допомогою функції gd_info.

Встановлення

Щоб включити підтримку GD, PHP налаштовують з опцією --with-gd [= DIR], де DIR — тека встановлення GD. Її не вказують при використанні рекомендованої розробниками вбудованої версії бібліотеки GD.

Бібліотека GD вимагає наявність бібліотек libpng і libjpeg для компіляції. Починаючи з PHP 7.4.0, --with-gd стає --enable-gd (чи потрібно взагалі включати модуль) і --with-external-gd (щоб вибрати використання зовнішнього libgd, а не вбудованого).

При ОС Windows потрібно включити модуль php_gd2.dll в php.ini.

Підвищити можливості бібліотеки GD для роботи з великою кількістю форматів зображень можна, використовуючи опцію --with-XXXX під час конфігурування PHP.

Опції при конфігуруванні (починаючи з PHP 7.4.0)

Примітка. При компіляції PHP з libpng потрібно використовувати ту саму версію libpng, з якої була зібрана бібліотека GD.

Підвищити можливості бібліотеки GD для роботи з різними шрифтами можна, використовуючи опцію --with-XXXX під час конфігурації PHP.

Опції при конфігуруванні шрифтів (починаючи з PHP 7.2.0)

Вбудовані сталі
Досяжні лише у випадку, якщо PHP було зібрано з підтримкою розширення GD або при його довантаженні під час виконання.

Вбудовані функції

Примітка. Якщо не записано інше, у разі помилки функція повертає false, інакше — true. Коли говорять про колір, мають на увазі значення функції imagecolorallocate.


Подано дані сторінки php.net/manual/ru/ref.image.php.