Lorsque vous traitez des images en PHP, vous devez souvent utiliser des effets transparents pour créer des couches, des logos ou des filigranes, etc. La fonction ImageColorallocatealpha est un outil très utile qui nous permet de définir la transparence des couleurs lors de la création d'images. Cet article expliquera comment utiliser la fonction ImageColorallocatEalpha pour créer des couches avec des effets transparents.
La fonction ImageColorAllocatEalpha est utilisée en PHP pour attribuer des couleurs aux images et définir la transparence des couleurs. La syntaxe est la suivante:
int imagecolorallocatealpha(resource $image, int $red, int $green, int $blue, int $alpha)
$ Image : Ressource d'image, généralement créée par ImageCreate ou ImageCreateTrueColor .
$ rouge , $ vert , $ bleu : les composants rouges, verts et bleus de la couleur, avec une plage de valeur de 0 à 255.
$ alpha : la transparence, avec une plage de valeur de 0 à 127. 0 signifie complètement opaque, et 127 signifie complètement transparent.
Pour créer une couche avec des effets transparents dans PHP, nous devons d'abord créer une ressource d'image, puis utiliser ImageColorAllocatEalpha pour attribuer des couleurs transparentes à l'image. Ensuite, nous dessinerons un graphique avec cette couleur et l'enregistrer ou la sortir.
<?php
// Créer un 200x200 Ressources d'image
$image = imagecreatetruecolor(200, 200);
// Attribuer une couleur transparente à l'image(rouge,50%Transparence)
$color = imagecolorallocatealpha($image, 255, 0, 0, 64);
// Définir le fond transparent de l'image
imagealphablending($image, false);
imagesavealpha($image, true);
// Dessiner un rectangle translucide
imagefilledrectangle($image, 50, 50, 150, 150, $color);
// L'image de sortie est PNG Format,Et garder la transparence
header('Content-Type: image/png');
imagepng($image);
// Libérez des ressources d'image
imagedestroy($image);
?>
ImageCreateTrueColor (200, 200) : Créez une véritable ressource d'image couleur de 200x200 pixels.
ImageColorAllocatEalpha ($ Image, 255, 0, 0, 64) : Attribuez une couleur à l'image un rouge (RGB: 255, 0, 0) et a une transparence de 50% (le paramètre alpha est 64).
ImageAlphable
ImagesVealpha ($ Image, True) : Enregistrez les informations de transparence.
ImageFilDectangle ($ Image, 50, 50, 150, 150, $ couleur) : dessinez un rectangle translucide sur l'image.
ImagePng ($ Image) : sortit l'image et maintient l'effet transparent.
Les valeurs de transparence varient de 0 à 127, où 0 signifie complètement opaque et 127 signifie complètement transparent. Dans une image, différents effets peuvent être obtenus en ajustant la transparence. Par exemple, l'utilisation de transparence plus élevée peut rendre l'image plus mince ou se mélanger mieux avec l'arrière-plan.
Format d'image : Afin de prendre en charge la transparence, les images au format PNG ou GIF sont généralement requises car le format JPEG ne prend pas en charge les arrière-plans transparents.
Considérations de performances : l'utilisation fréquente de la transparence peut affecter les performances lors du travail avec des images complexes, en particulier dans des images plus grandes ou des couches à haute complexité.
En utilisant la fonction ImageColorAllocatEalpha , vous pouvez facilement définir la transparence pour les images en PHP, créant des couches avec des effets transparents. Ceci est très utile pour générer des scénarios d'application tels que des images dynamiques, des icônes, des logos ou des filigranes.
J'espère que cet article vous est utile. Une fois que vous maîtrisez cette technique, vous pouvez facilement réaliser la transparence de l'image dans PHP!