Aktueller Standort: Startseite> Neueste Artikel> Wie setze ich die Füllfarbe für Polygone mithilfe der ImageOpenPolygon -Funktion und imageColoralloclocation ()?

Wie setze ich die Füllfarbe für Polygone mithilfe der ImageOpenPolygon -Funktion und imageColoralloclocation ()?

M66 2025-06-11

Bei der Arbeit mit Bildern in PHP, ImageOpenPolygon () und imagebildung () sind zwei sehr nützliche Funktionen, die häufig zum Zeichnen von Polygonen für Bilder und Set -Füllfarben verwendet werden. In diesem Artikel wird ausführlich erläutert, wie diese beiden Funktionen verwendet werden, um ein Polygon zu erstellen und ihm Farbe hinzuzufügen.

1. Einführung in BildOpenpolygon () -Funktion

Die ImageOpenPolygon () -Funktion wird verwendet, um ein Polygon auf einem Bild zu zeichnen. Ein Polygon besteht aus einer Reihe von Koordinaten, von denen PHP entsprechende Formen im Bild basierend auf der Basis zeichnet.

Funktionsprototyp:

 bool imageopenpolygon(resource $image, array $points, int $num_points)
  • $ bild : Bildressource, normalerweise ein Bild, das von ImagecreatTueColor () oder ähnlichen Funktionen erstellt wurde.

  • $ points : Ein Array, das die Koordinaten jedes Scheitelpunkts eines Polygons enthält, befindet sich in Form von [x1, y1, x2, y2, ..., xn, yn] .

  • $ num_points : Die Anzahl der Scheitelpunkte des Polygons.

Diese Funktion zeichnet ein Polygon, das aus einer bestimmten Koordinate besteht, aber das Innere des Polygons ist zu diesem Zeitpunkt hohl.

2. Einführung in die Funktion von ImageColOralLaCate ()

Mit der Funktion "ImageColOralLaCate () werden einem Bild eine Farbe zugewiesen und eine Kennung für diese Farbe zurückgegeben. Mit dieser Kennung können wir eine Farbe für die Füllung oder Grenze des Polygons angeben.

Funktionsprototyp:

 int imagecolorallocate(resource $image, int $red, int $green, int $blue)
  • $ Bild : Bildressource.

  • $ rot : Die rote Komponente der Farbe (0-255).

  • $ Green : Die grüne Komponente der Farbe (0-255).

  • $ blau : Die blaue Komponente der Farbe (0-255).

Diese Funktion gibt eine Kennung einer Farbe zurück, mit der Farben in einem Bild gezeichnet oder gefüllt werden.

3. Setzen Sie die Füllfarbe für Polygone

Um die Füllfarbe für ein Polygon festzulegen, müssen wir die Funktionen imageOpenpolygon () und im Bildfill () kombinieren. Die Funktion von ImageFill () ermöglicht es, Farbe in angegebenen Punkten auszufüllen.

Zunächst verwenden wir ImageOpenpolygon (), um das Polygon zu zeichnen. Verwenden Sie dann imageColOralCode () , um eine Farbkennung zuzuweisen und die Farbe im Polygon über Bildfill () zu füllen.

Beispielcode:

 <?php
// Erstellen Sie eine leere Bildressource
$image = imagecreatetruecolor(400, 400);

// Farben zuweisen
$white = imagecolorallocate($image, 255, 255, 255); // Hintergrundfarbe
$blue = imagecolorallocate($image, 0, 0, 255); // Polygonfüllende Farbe

// 设置Hintergrundfarbe
imagefill($image, 0, 0, $white);

// Definieren Sie die Eckpunkte eines Polygons
$points = array(
    100, 100,
    200, 50,
    300, 100,
    300, 200,
    200, 250,
    100, 200
);

// verwenden imageopenpolygon Polygone zeichnen
imageopenpolygon($image, $points, count($points) / 2);

// 为Polygonfüllende Farbe
imagefilledpolygon($image, $points, count($points) / 2, $blue);

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

// Reinigen Sie den Speicher
imagedestroy($image);
?>

Code Parsen:

  1. Erstellt eine 400x400 Bildressource.

  2. Verwenden Sie ImageColOralCocate (), um der Hintergrundfarbe und Polygonfüllfarbe Farben zuzuweisen.

  3. Definiert ein Array -$ -Punkte mit Polygonscheitelpunkten.

  4. Ein hohles Polygon wird unter Verwendung der ImageOpenpolygon () -Funktion gezeichnet.

  5. Verwenden Sie die ImageFilledPolygon () -Funktion, um das Polygon mit blauer Farbe zu füllen.

  6. Verwenden Sie ImagePng (), um das generierte Bild auszugeben.

4. Zusammenfassung

Mit dem obigen Codebeispiel können Sie lernen, wie Sie ein Polygon unter Verwendung von ImageOpenPolygon () zeichnen und die Füllfarbe für sie über ImagebildColoralClocate () festlegen. Die Eckpunkte und Farben des Polygons können nach Bedarf eingestellt werden, um den bestimmten Anforderungen zu erfüllen.

Hoffentlich hilft Ihnen dieser Artikel, zu verstehen, wie Sie PHP -Bildverarbeitungsfunktionen verwenden, um Polygone zu zeichnen und Farben zu setzen!