(PHP 4 >= 4.3.2, PHP 5, PHP 7)
imagecolorallocatealpha — Alloue une couleur à une image
$image
, int $red
, int $green
, int $blue
, int $alpha
) : int
imagecolorallocatealpha() se comporte comme
imagecolorallocate() avec en plus le paramètre de
transparence alpha.
imageUne ressource d'image, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().
redValeur du composant rouge.
greenValeur du composant vert.
blueValeur du composant bleu.
alphaUne valeur entre 0 et 127. 0 indique une opacité complète tandis que 127 indique une transparence complète.
red, green
et blue sont des entiers compris entre 0 et 255, ou
des hexadécimaux compris entre 0x00 et 0xFF.
Un identifiant de couleur ou FALSE si l'allocation échoue.
Cette fonction peut retourner FALSE, mais elle peut aussi retourner une valeur équivalent à FALSE.
Veuillez lire la section sur les booléens pour plus d'informations.
Utilisez l'opérateur ===
pour tester la valeur de retour exacte de cette fonction.
| Version | Description |
|---|---|
| 5.1.3 |
Retourne FALSE si l'allocation échoue. Précédemment,
-1 était retourné.
|
Exemple #1 Exemple avec imagecolorallocatealpha()
<?php
$size = 300;
$image=imagecreatetruecolor($size, $size);
// quelque chose pour obtenir un fond blanc avec une bordure noire
$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;
// alloue des couleurs avec des valeurs alpha
$yellow = imagecolorallocatealpha($image, 255, 255, 0, 75);
$red = imagecolorallocatealpha($image, 255, 0, 0, 75);
$blue = imagecolorallocatealpha($image, 0, 0, 255, 75);
// Dessine 3 ellipses
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);
// Ne pas oublier d'envoyer un header correct
header('Content-Type: image/png');
// et finallement, afficher le résultat
imagepng($image);
imagedestroy($image);
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :