Aktueller Standort: Startseite> Neueste Artikel> ImageCrreatetRueColor () + ImageOpenpolygon (): Erstellen Sie ein Bild von Grund auf neu

ImageCrreatetRueColor () + ImageOpenpolygon (): Erstellen Sie ein Bild von Grund auf neu

M66 2025-05-29

In PHP werden Bildverarbeitungsfunktionen in der GD -Bibliothek, ImagecrreatTueColor () und ImageOpenPolygon () bereitgestellt, zwei der sehr nützlichen Funktionen. In diesem Artikel wird angezeigt, wie Sie mit diesen beiden Funktionen ein Bild von Grund auf neu erstellen und ein einfaches Polygon zeichnen. Wir werden Schritt für Schritt durchlaufen, wie Sie ein Bild erstellen, die Bildfarbe festlegen und die Grafiken mit der Polygon -Methode rendern.

1. Erstellen Sie ein Bild mit ImagecrreatTueColor ()

ImageCrreatTueColor () ist eine sehr grundlegende Funktion, um eine echte Farbbildressource zu erstellen. Es empfängt zwei Parameter: die Breite und Höhe des Bildes und gibt eine Ressource zurück, die das Bild darstellt.

 <?php
// Erstellen Sie eine breite 500 hoch 500 Bilder
$width = 500;
$height = 500;
$image = imagecreatetruecolor($width, $height);

Die von dieser Funktion zurückgegebene $ image -Variable ist die Bildressource, und Sie können sie verwenden, um die Bildverarbeitungsvorgänge als nächstes auszuführen.

2. Zuweisen Sie Farben

In Bildern müssen wir normalerweise verschiedene Farben einstellen , um Formen, Hintergründe usw. zu zeichnen. Es akzeptiert 4 Parameter: Bildressource, Rot, Grün und Blau (0-255).

 // Weisen Sie Hintergrundfarbe und Polygonfarbe zu
$background_color = imagecolorallocate($image, 255, 255, 255);  // Weißer Hintergrund
$polygon_color = imagecolorallocate($image, 0, 0, 255);        // Blaues Polygon

3. Füllen Sie die Hintergrundfarbe

Verwenden Sie ImageFill () , um das gesamte Bild mit der angegebenen Farbe zu füllen. Nachdem wir das Bild erstellt haben, möchten wir einen weißen Hintergrund füllen.

 // Hintergrundfarbe füllen
imagefill($image, 0, 0, $background_color);

4. Zeichnen Sie Polygone mit ImagePolygon () ()

Als nächstes zeichnen wir ein Polygon mit ImagePolygon () . Die Parameter dieser Funktion umfassen Bildressourcen, Vertex -Koordinaten -Arrays und Scheitelpunktzahlen. Jeder Scheitelpunkt eines Polygons wird durch eine Koordinate (x, y) dargestellt.

 // Scheitelpunktkoordinaten von Polygonen
$points = array(
    150, 150,
    350, 150,
    400, 350,
    200, 400,
    100, 300
);

// Polygone zeichnen
imagepolygon($image, $points, 5, $polygon_color);

5. Ausgabebild

Schließlich müssen wir das erstellte Bild ausgeben. PHP bietet Funktionen wie ImagePng () , ImageJpeg () und ImageGif () , und Sie können eines davon auswählen, um Bilder entsprechend Ihren Anforderungen auszugeben. Hier verwenden wir ImagePng () , um das Bild als PNG -Format zu speichern.

 // Ausgabe Bild zum Browser
header('Content-Type: image/png');
imagepng($image);

// Oder als Datei speichern
// imagepng($image, 'polygon_image.png');

6. Ressourcen frei machen

Sobald das Bild generiert ist, sollten Bildressourcen veröffentlicht werden, um Speicher zu speichern.

 // Zerstöre Bildressourcen
imagedestroy($image);

Vollständiger Codebeispiel

 <?php
// Bildressourcen erstellen
$width = 500;
$height = 500;
$image = imagecreatetruecolor($width, $height);

// Farben zuweisen
$background_color = imagecolorallocate($image, 255, 255, 255);  // Weißer Hintergrund
$polygon_color = imagecolorallocate($image, 0, 0, 255);        // Blaues Polygon

// Hintergrundfarbe füllen
imagefill($image, 0, 0, $background_color);

// Scheitelpunktkoordinaten von Polygonen
$points = array(
    150, 150,
    350, 150,
    400, 350,
    200, 400,
    100, 300
);

// Polygone zeichnen
imagepolygon($image, $points, 5, $polygon_color);

// Ausgabebild
header('Content-Type: image/png');
imagepng($image);

// Zerstöre Bildressourcen
imagedestroy($image);
?>