imagelayereffect

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

imagelayereffect Устанавливает флаг альфа-смешивания, чтобы создать эффекты наложения изображений

Описание

imagelayereffect(GdImage $image, int $effect): true

Функция устанавливает флаг альфа-смешивания, чтобы создать эффекты наложения изображений.

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

image

Объект GdImage, который вернула функция imagecreatetruecolor() или другая функция генерации изображений.

effect

Константа из следующего списка:

IMG_EFFECT_REPLACE
Заменять пиксели; аналогично передаче true в функцию imagealphablending()
IMG_EFFECT_ALPHABLEND
Использовать обычное сопряжение цветов; аналогично передаче false в функцию imagealphablending()
IMG_EFFECT_NORMAL
Аналогична константе IMG_EFFECT_ALPHABLEND.
IMG_EFFECT_OVERLAY
В результате наложения картинки с этим эффектом чёрные и белые пиксели фона изображения останутся так же чёрными и белыми, а серые поменяют цвет на цвет пикселя накладываемого изображения.
IMG_EFFECT_MULTIPLY
Оверлеи с множителем эффекта.

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

Функция возвращает логическое значение true.

Список изменений

Версия Описание
8.0.0 Параметр image теперь принимает объект GdImage; раньше параметр принимал корректный gd-ресурс (resource).
7.2.0 Добавили эффект IMG_EFFECT_MULTIPLY; для работы эффекта требуется системная библиотека libgd >= 2.1.1 или библиотека libgd, которая входит в комплект исходных файлов интерпретатора.

Примеры

Пример #1 Пример установки флага альфа-смешивания функцией imagelayereffect()

<?php

// Настраиваем изображение
$im = imagecreatetruecolor(100, 100);

// Устанавливаем фон
imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 220, 220, 220));

// Применяем флаг альфа-смешивания для наложения
imagelayereffect($im, IMG_EFFECT_OVERLAY);

// Рисуем два серых эллипса
imagefilledellipse($im, 50, 50, 40, 40, imagecolorallocate($im, 100, 255, 100));
imagefilledellipse($im, 50, 50, 50, 80, imagecolorallocate($im, 100, 100, 255));
imagefilledellipse($im, 50, 50, 80, 50, imagecolorallocate($im, 255, 100, 100));

// Устанавливаем заголовок с MIME-типом изображения и выводим результат
header('Content-type: image/png');
imagepng($im);

Вывод приведённого примера будет похож на:

Вывод примера: Результат обработки изображения функцией imagelayereffect()