Bei der PHP-Programmierung werden häufig Bildverarbeitungsfunktionen verwendet, z. B. das Skalieren und Zuschneiden von Bildern. Ein häufig auftretendes Problem besteht darin, den schwarzen Hintergrund im Bild transparent zu machen und ein PNG-24-Bit-Transparenzbild zu erreichen.
Heute besprechen wir, wie man mit PHP Schwarz auf Transparent setzt.
Zunächst müssen wir die GD-Bibliothek von PHP verwenden, um Bilder zu verarbeiten. Die GD-Bibliothek ist eine beliebte Grafikverarbeitungsbibliothek, mit der verschiedene Grafikdateien verarbeitet werden können.
In PHP können Sie die GD-Bibliothek über den folgenden Code öffnen:
<?php // 开启GD库 if(!function_exists('imagecreate')){ echo 'GD库未安装!'; } ?>
Als nächstes müssen wir verstehen, wie wir die GD-Bibliothek zum Bearbeiten von Bildern verwenden.
Der grundlegende Prozess zum Bearbeiten von Bildern durch die PHP-GD-Bibliothek ist wie folgt:
Wenn wir diese Funktionen zum Bearbeiten von Bildern verwenden, müssen wir auf einige Details achten. Beim Speichern von Bildern müssen wir beispielsweise auf das Format und das Farbmodell des Speichers achten. Normalerweise müssen wir das Bild im PNG-Format speichern und das True-Color-Modell verwenden.
Jetzt kommen wir zurück zu unserem Problem, wie man den schwarzen Hintergrund im Bild transparent macht.
Wir können dies durch die folgenden Schritte erreichen:
Verwenden Sie die Funktion imagecreatefrompng(), um ein Bild im PNG-Format zu erstellen; #Loop Durchlaufe alle Pixel des Bildes; Verwenden Sie die Funktion imagecolorat(), um die Farbe jedes Pixels zu ermitteln;$src_image = imagecreatefrompng('source.png'); $width = imagesx($src_image); $height = imagesy($src_image); for($x = 0; $x < $width; $x++){ for($y = 0; $y < $height; $y++){ $rgb = imagecolorat($src_image, $x, $y); $colors = imagecolorsforindex($src_image, $rgb); if($colors['red'] == 0 && $colors['green'] == 0 && $colors['blue'] == 0){ imagesetpixel($src_image, $x, $y, imagecolorallocatealpha($src_image, 0, 0, 0, 127)); } } } imagesavealpha($src_image, true); imagepng($src_image, 'result.png'); imagedestroy($src_image);
Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie man in PHP Schwarz auf Transparent setzt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!