(PHP 4 >= 4.3.2, PHP 5, PHP 7)
imagecolorallocatealpha — Alloue une couleur à une image
$image
, int $red
, int $green
, int $blue
, int $alpha
)
imagecolorallocatealpha() se comporte comme
imagecolorallocate() avec en plus le paramètre de
transparence alpha
.
image
Une ressource d'image, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().
red
Valeur du composant rouge.
green
Valeur du composant vert.
blue
Valeur du composant bleu.
alpha
Une 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 à :