In PHP wird die ImageOpenPolygon () -Funktion verwendet, um ein Polygon auf einem Bild zu zeichnen. Die Syntax dieser Funktion lautet wie folgt:
bool imageopenpolygon(resource $image, array $points, int $num_points, int $color)
$ image : Die Zielbildressource, die normalerweise durch Funktionen wie Imagecreate () oder Imagecreatefromjpeg () erstellt wurde.
$ Punkte : Ein Array, das die Koordinaten jedes Punktes eines Polygons enthält. Jede Koordinate besteht aus zwei Ganzzahlwerten (x und y).
$ num_points : Die Anzahl der Scheitelpunkte eines Polygons.
$ color : Die Farbe, die zum Zeichnen von Polygonen verwendet wird, die normalerweise von ImageColoralclocation () oder imageColorallocatealpha () -Funktionen erzeugt werden.
In der ImageOpenPolygon () -Funktion bestimmt der $ Color -Parameter die Füllfarbe des Polygons. Wenn Sie die Farbe festlegen möchten, müssen Sie zunächst die Funktion "ImageColOralLaCate () verwenden, um einen Farbwert zuzuweisen. Das Format dieser Funktion lautet:
int imagecolorallocate(resource $image, int $red, int $green, int $blue)
Wenn $ Image die Zielbildressource ist, sind $ rot , $ green und $ blau die RGB -Werte der Farbe, die zwischen 0 und 255 reichen. Durch diese Funktion können Sie verschiedene Farben festlegen.
<?php
// Erstellen a 400x400 Bilder
$image = imagecreate(400, 400);
// Farben zuweisen
$bg_color = imagecolorallocate($image, 255, 255, 255); // Weißer Hintergrund
$polygon_color = imagecolorallocate($image, 0, 0, 255); // Blaues Polygon
// Stellen Sie die Eckpunkte des Polygons ein
$points = array(
100, 100, // Punkt 1 (x1, y1)
300, 100, // Punkt 2 (x2, y2)
350, 250, // Punkt 3 (x3, y3)
250, 350, // Punkt 4 (x4, y4)
150, 250 // Punkt 5 (x5, y5)
);
// Zeichnen Sie Polygone auf Bilder
imageopenpolygon($image, $points, count($points) / 2, $polygon_color);
// Ausgabebild
header('Content-Type: image/png');
imagepng($image);
// Zerstöre Bildressourcen
imagedestroy($image);
?>
Bildressource erstellen : Erstellen Sie ein Bild von 400 x 400 Pixel über Imagecrate () .
Zuwenden Sie Farben : Verwenden Sie ImageColOralCocate (), um dem Hintergrund bzw. Polygon Farben zuzuweisen. Der Hintergrund ist weiß (RGB: 255, 255, 255) und das Polygon ist blau (RGB: 0, 0, 255).
Zeichnen Sie Polygon : Durch die ImageOpenPolygon () -Funktion wird ein Polygon unter Verwendung des Set -Vertex -Array $ Punkte und color $ polygon_color gezeichnet.
Die ImageOpenPolygon () -Funktion schließt die Bildressourcen nicht automatisch, sodass die Funktion von ImagedStroy () verwendet werden muss, um das Bild zu zerstören und den Speicher freizugeben.
Um den Transparenzeffekt zu verwenden, können Sie ImageColorallocatealpha () verwenden, um Farben mit Transparenz zu erstellen.
Mit der obigen Methode können Sie leicht Polygone mit unterschiedlichen Farben auf dem Bild zeichnen.