Aktueller Standort: Startseite> Neueste Artikel> Wie kann ich transparente Farben mit ImageColoralloclocation in PHP zuweisen?

Wie kann ich transparente Farben mit ImageColoralloclocation in PHP zuweisen?

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>Wie zuPHPVerwendet inimagecolorallocateWeisen Sie transparente Farben zu?</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>Im EinsatzPHPvonGDWenn die Bibliothek Bildverarbeitung durchführt,<code>imagecolorallocate()
"; Echo "

Der obige Code erstellt eine 200 × 200 -Leinwand und ist mit reinem Weiß gefüllt.

"
; Echo "

2. Implementierung transparenter Farben

"
; Echo "

Wenn Sie in Ihrem Bild transparente Farben verwenden möchten, kann ImageColoralloclocation nicht direkt implementiert werden und Sie müssen stattdessen imageColorallocatealpha () verwenden. Der Funktionsprototyp lautet:

"
; Echo "
<span class="fun">ImageColorallocatealpha (Ressource \ $ image, int \ $ rot, int \ $ green, int \ $ blau, int \ $ alpha)</span>
"
; Echo "

Wo der Wertebereich von \ $ alpha 0 (vollständig undurchsichtig) bis 127 (vollständig transparent) ist.

"
; Echo "

3. Beispielcode

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

// Aktivieren Sie transparente Hintergrundeinsparungen
imagesavealpha(\$im, true);

// Weisen Sie die transparente Hintergrundfarbe zu
\$transparent = imagecolorallocatealpha(\$im, 0, 0, 0, 127);
imagefill(\$im, 0, 0, \$transparent);

// Weisen Sie ein durchscheinendes Rot zu
\$red = imagecolorallocatealpha(\$im, 255, 0, 0, 63);

// Zeichne ein Rechteck
imagefilledrectangle(\$im, 50, 50, 150, 150, \$red);

// AusgabePNGFormat
header('Content-Type: image/png');
imagepng(\$im);
imagedestroy(\$im);
"
;
Echo "

Dieser Code erstellt zunächst ein Bild mit transparenten Kanälen, die mit einem vollständig transparenten Hintergrund gefüllt sind. Dann weisen Sie ein durchscheinendes rotes Rechteck zum Zeichnen auf die Leinwand zu. Stellen Sie sicher, dass die transparenten Kanäle beim Speichern des PNG durch BilderSavealpha () gültig sind.

" Echo "

4. Zusammenfassung

"
; Echo "
  • ImageColorAlleCocate () wird verwendet, um undurchsichtige Farben zuzuweisen.
  • ImageColorallocatealpha () kann Transparenz angeben, um transparente oder durchscheinende Effekte zu erzielen.
  • Wenn Sie PNG/GIF ausgeben, achten Sie darauf auf , Imagesavealpha () oder Imagebosparent () aufzurufen, um Transparentinformationen zu rufen, um transparente Informationen zurückzuerhalten.
"
Echo "

Durch rationales Unter Verwendung von ImageColorallocatealpha () können wir flexible transparente Effekte bei der Bildverarbeitung erzielen und die visuelle Expression verbessern.

"