English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP базовый курс

PHP продвинутый курс

PHP & MySQL

PHP справочник

PHP imagecolorallocatealpha() — назначение цвета и прозрачности для изображения用法 и примеры

Обработка изображений PHP

imagecolorallocatealpha — назначает цвет и прозрачность для изображения.

Синтаксис

int imagecolorallocatealpha ( resource $image, int $red, int $green, int $blue, int $alpha )

imagecolorallocatealpha() ведет себя так же, как и imagecolorallocate(), но добавляет дополнительный параметр прозрачности alpha, значение которого варьируется от 0 до 127. 0 означает完全没有 прозрачности, 127 - полная прозрачность.

Если分配失败, возвращает FALSE.

Внимание:Эта функция требует GD 2.0.1 или выше (рекомендуется 2.0.28 и выше).

Пример

<?php
$size = 300;
$image = imagecreatetruecolor($size, $size);
// С белым фоном и черной рамкой нарисовать прямоугольник
$back = imagecolorallocate($image, 255, 255, 255);
$border = imagecolorallocate($image, 0, 0, 0);
imagefilledrectangle($image, 0, 0, $size - 1, $size - 1, $back);
imagerectangle($image, 0, 0, $size - 1, $size - 1, $border);
$yellow_x = 100;
$yellow_y = 75;
$red_x = 120;
$red_y = 165;
$blue_x = 187;
$blue_y = 125;
$radius = 150;
// Использовать alpha значение для распределения цветов
$yellow = imagecolorallocatealpha($image, 255, 255, 0, 75);
$red = imagecolorallocatealpha($image, 255, 0, 0, 75);
$blue = imagecolorallocatealpha($image, 0, 0, 255, 75);
// Нарисовать три перекрывающиеся окружности
imagefilledellipse($image, $yellow_x, $yellow_y, $radius, $radius, $yellow);
imagefilledellipse($image, $red_x, $red_y, $radius, $radius, $red);
imagefilledellipse($image, $blue_x, $blue_y, $radius, $radius, $blue);
// Не забудьте вывести правильный header!
header('Content-type: image/png');
// Последний результат вывода
imagepng($image);
imagedestroy($image);
?>

Изображение результата примера выше приведено ниже:

См. также статьи

Обработка изображений PHP