Heim  >  Artikel  >  Backend-Entwicklung  >  Verwenden Sie die GD2-Funktion, um geometrische Figuren zu zeichnen (Tutorial 4 für typische PHP-Grafikbilder).

Verwenden Sie die GD2-Funktion, um geometrische Figuren zu zeichnen (Tutorial 4 für typische PHP-Grafikbilder).

黄舟
黄舟Original
2017-04-24 17:25:372149Durchsuche

Verwenden der GD2-Funktion zum Zeichnen geometrischer Figuren (Tutorial zur typischen Anwendung von PHP-Grafiken und -Bildern 4)

In diesem Artikel wird hauptsächlich die Verwendung der GD2-Funktion erläutert Um geometrische Figuren zu zeichnen, müssen wir zunächst ein Bild erstellen , und schließlich die Grafik ausgeben!

Dann haben wir im vorherigen Artikel „Verwendung von Bildverarbeitungstechnologie zum Generieren von Bestätigungscodes (typisches Anwendungstutorial für PHP-Grafiken und -Bilder 3) “ vorgestellt, wie man einen Bestätigungscode generiert. Ich weiß es nicht, Freunde. Haben Sie diesen Wissenspunkt gemeistert? Freunde, die damit nicht vertraut sind, können ihn überprüfen! Heute erklären wir das Zeichnen geometrischer Formen!

Technische Punkte dieses Artikels:

In diesem Artikel wird die GD2-Funktion hauptsächlich zum Zeichnen geometrischer Figuren verwendet, von denen einige verwendet wurden Für eine detaillierte Einführung stellen wir im Folgenden die häufig verwendeten Funktionen vor:

(1) imagecreatetruecolor()-Funktion

Diese Funktion wird verwendet, um a vorzuschlagen Vollfarbbilddatei-Ressource, das Syntaxformat dieser Funktion lautet wie folgt:

int imagecreatetruecolor(int x_size,int y_size);

Die Parameter x_size und y_size sind die Breite bzw. Höhe des Bildes in Pixel (px).

(2)imagecolorallocate()-Funktion

Diese Funktion wird verwendet, um die Farbe des angegebenen Bildes für die Verwendung durch andere Zeichenfunktionen anzupassen. Das Syntaxformat ist wie folgt :

int imagecolorallocate(int im, int red, int green, int blue);

Der Parameter im stellt das Handle des Bildes dar; die Parameter Rot, Grün und Blau sind die drei Primärfarben von RGB und ihre Werte sind ganze Zahlen von 0 bis 255 oder 0x00~ 0xff im Hexadezimalformat. Diese Funktion muss aufgerufen werden, um jede Farbe zu erstellen, die in dem durch image dargestellten Bild verwendet wird.

(3)imagefilledarc()-Funktion

Diese Funktion wird verwendet, um eine Ellipse zu zeichnen und sie zu füllen. Das Syntaxformat dieser Funktion ist wie folgt:

int imagefilledarc(im, int cx , int w, int h, int s, int e, int color, int style);

Zeichnen Sie einen elliptischen Bogen mit cx, cy (die obere linke Ecke des Bildes ist 0, 0) als Mittelpunkt des durch im dargestellten Bildes. Gibt „true“ zurück, wenn erfolgreich, false, wenn fehlgeschlagen. w und h geben die Breite bzw. Höhe der Ellipse an, die Parameter s und e geben den Start- und Endpunkt im Winkel an und color stellt den Füllfarbwert dar.

Stil kann das bitweise ODER (OR) der folgenden Werte sein:

  • IMG_ARC_PIE

  • IMG_ARC_CHORD

  • IMG_ARC_NOFILL

  • IMG_ARC_EDGED

IMG_ARC_PIE und IMG_ARC_CHORD schließen sich gegenseitig aus; IMG_ARC_CHORD ist einfach mit einer geraden Linie verbunden und Endpunkte erzeugt IMG_ARC_PIE eine kreisförmige Grenze (wenn beide verwendet werden, wird IMG_ARC_CHORD wirksam). IMG_ARC_NOFILL gibt an, dass der Bogen oder die Sehne nur einen Umriss und keine Füllung hat. IMG_ARC_EDGED gibt eine gerade Linie an, die den Start- und Endpunkt mit dem Mittelpunkt verbindet. In Verbindung mit IMG_ARC_NOFILL ist dies eine gute Möglichkeit, den Umriss eines Kreisdiagramms zu zeichnen (ohne es zu füllen).

(4)imagefilledrectangle()-Funktion

Diese Funktion wird zum Zeichnen eines gefüllten Rechtecks ​​verwendet. Das Syntaxformat dieser Funktion ist wie folgt:

bool imagefilledrectangle ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int$color )

Diese Funktion färbt den geschlossenen rechteckigen Bereich des Bildes. Die Parameter x1, y1 und x2, y2 sind die Koordinaten der Diagonale des Rechtecks

(5) imagedestroy()-Funktion

Diese Funktion wird verwendet, um Grafiken zu löschen und Speicherplatz freizugeben. Das Syntaxformat ist wie folgt:

int imagedestroy(int im);
Der Parameter im ist die Funktion imagecreate() und die Funktion imagecreatetruecolor() Graphics gebaut!

Sehen wir uns nun an, wie man geometrische Figuren zeichnet:

Der spezifische Code für den Implementierungsprozess lautet wie folgt:

<?php
header(&#39;Content-type: image/png&#39;);// 告诉浏览器,这个文件,是一个png图片
$img = imagecreatetruecolor(260, 200);//创建一个400X200的画布
$green = imagecolorallocate($img, 20, 145, 40);//定义一个绿颜色
$darkgreen = imagecolorallocate($img, 25, 80, 25);//定义一个深绿颜色
$blue = imagecolorallocate($img, 0, 225, 205);//定义一个蓝颜色
$darkblue = imagecolorallocate($img, 10, 180, 200);//定义一个深蓝颜色
$red = imagecolorallocate($img, 255, 0, 0);//定义一个红颜色
$bluered = imagecolorallocate($img, 202, 10, 0);//定义一个深红颜色
for($i = 110; $i > 100 ; $i--){
    imagefilledarc($img,130,$i,150,100,0,95,$darkgreen,IMG_ARC_PIE);
    imagefilledarc($img,130,$i,150,100,95,125,$darkblue,IMG_ARC_PIE);
    imagefilledarc($img,130,$i,150,100,120,360,$bluered,IMG_ARC_PIE);
}
imagefilledarc($img,130,$i,150,100,0,95,$green,IMG_ARC_PIE);
imagefilledarc($img,130,$i,150,100,95,125,$blue,IMG_ARC_PIE);
imagefilledarc($img,130,$i,150,100,120,360,$red,IMG_ARC_PIE);
imagepng($img);//以png格式输出图像
imagedestroy($img);//释放资源
?>
Die Ausgabeergebnisse sind wie folgt:

Verwenden Sie die GD2-Funktion, um geometrische Figuren zu zeichnen (Tutorial 4 für typische PHP-Grafikbilder).

Verwenden Sie die GD2-Funktion, um geometrische Figuren zu zeichnen. Ich glaube, dass jeder dies beherrschen kann Ausführliche Informationen zum Hinzufügen von Zeilen- und Spaltenbeschriftungen zu Diagrammen finden Sie unter „

Verwenden der GD2-Funktion zum Hinzufügen von Zeilen- und Spaltenbeschriftungen zu Diagrammen“ (Tutorial 5 zu typischen PHP-Grafiken und -Bildern). )"!

Das obige ist der detaillierte Inhalt vonVerwenden Sie die GD2-Funktion, um geometrische Figuren zu zeichnen (Tutorial 4 für typische PHP-Grafikbilder).. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn