Position actuelle: Accueil> Derniers articles> Comment attribuer des couleurs transparentes à l'aide d'imageColorAllocate en PHP?

Comment attribuer des couleurs transparentes à l'aide d'imageColorAllocate en PHP?

gitbox 2025-09-08
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<h1>CommentPHPUtilisé dansimagecolorallocateAffecter les couleurs transparentes?</h1>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<hr>"</span></span><span>;

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<p>UtiliséPHPdeGDLorsque la bibliothèque effectue un traitement d&#39;image,<code>imagecolorallocate()
"; Echo "

Le code ci-dessus crée une toile 200 × 200 et est rempli de blanc pur.

"
; écho "

2. Implémentation de couleurs transparentes

"
; écho "

Si vous souhaitez utiliser des couleurs transparentes dans votre image, ImageColorAllocate ne peut pas être implémentée directement, et vous devez utiliser ImageColorAllocatEalPha () à la place. Son prototype de fonction est:

"
; écho "
<span class="fun">ImageColorallocatealpha (Resource \ $ image, int \ $ red, int \ $ vert, int \ $ bleu, int \ $ alpha)</span>
"
; écho "

Lorsque la plage de valeur de \ $ alpha est 0 (complètement opaque) à 127 (complètement transparente).

"
; écho "

3. Exemple de code

"
; Echo "
\$im = imagecreatetruecolor(200, 200);

// Activer la sauvegarde de fond transparent
imagesavealpha(\$im, true);

// Attribuer une couleur d&#39;arrière-plan transparent
\$transparent = imagecolorallocatealpha(\$im, 0, 0, 0, 127);
imagefill(\$im, 0, 0, \$transparent);

// Attribuer un rouge translucide
\$red = imagecolorallocatealpha(\$im, 255, 0, 0, 63);

// Dessiner un rectangle
imagefilledrectangle(\$im, 50, 50, 150, 150, \$red);

// SortirPNGFormat
header('Content-Type: image/png');
imagepng(\$im);
imagedestroy(\$im);
"
;
écho "

Ce code crée d'abord une image avec des canaux transparents, remplis d'un arrière-plan complètement transparent. Ensuite, attribuez ensuite un rectangle rouge translucide pour dessiner sur la toile. Assurez-vous que les canaux transparents sont valides lors de la sauvegarde de la PNG par ImagesVealpha () .

"
; écho "

4. Résumé

"
; L'écho "
  • ImageColorAllocate () est utilisé pour attribuer des couleurs opaques.
  • ImageColorAllocatealpha () peut spécifier la transparence pour obtenir des effets transparents ou
  • translucides .
écho "

En utilisant rationnellement l'imageColorAllocatEalpha () , nous pouvons obtenir des effets transparents flexibles dans le traitement d'image et améliorer l'expression visuelle.

"
;