Lorsque vous travaillez avec des images en PHP, nous devons souvent dessiner différentes formes. Pour le dessin des polygones, ImageOpenPolygon () et ImageLine () sont deux fonctions très pratiques. Cet article expliquera en détail comment les utiliser ensemble pour dessiner des bordures de polygone et donner un exemple complet.
La fonction ImageOpenPolygon () est utilisée pour dessiner un chemin de polygone ouvert , c'est-à-dire dessiner une ligne reliant chaque sommet, mais ne ferme pas automatiquement le dernier bord.
ImageLine () peut tracer une ligne droite entre deux points, qui peuvent être utilisés pour fermer manuellement les polygones .
Si vous devez dessiner une bordure polygone entièrement fermée, vous devez utiliser ImageOpenPolygon () , puis utiliser ImageLine () pour connecter le point de départ et le point final.
Voici un exemple de dessin des bordures pentagonales à l'aide de la bibliothèque PHP GD:
<?php
// Créer une toile
$width = 400;
$height = 400;
$image = imagecreatetruecolor($width, $height);
// Attribuer des couleurs
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
// Remplir l'arrière-plan
imagefill($image, 0, 0, $white);
// Définissez les sommets d'un Pentagone
$points = [
200, 50, // sommet1
350, 150, // sommet2
300, 300, // sommet3
100, 300, // sommet4
50, 150 // sommet5
];
// Dessiner des polygones ouverts
imageopenpolygon($image, $points, 5, $black);
// utiliser imageline Fermez manuellement le dernier bord(sommet5回到sommet1)
imageline($image, $points[8], $points[9], $points[0], $points[1], $black);
// Image de sortie
header('Content-Type: image/png');
imagepng($image);
// Libérer les ressources
imagedestroy($image);
?>
ImageOpenPolygon () dessine le segment de ligne du sommet 1 au sommet 5, mais ne connecte pas le sommet 5 à Vertex 1.
Imageline () anime manuellement le segment de ligne du sommet 5 à Vertex 1, fermant avec succès la bordure.
Après avoir utilisé ImageOpenPolygon () , n'oubliez pas d'utiliser Imageline () pour remplir le dernier bord , sinon la figure sera ouverte.
Les coordonnées de sommet doivent être répertoriées dans un tableau unidimensionnel, chaque nombre étant un ensemble de coordonnées (x, y) .
Avant de dessiner, vous devez vous assurer que la bibliothèque GD est correctement installée. Vous pouvez vérifier les informations de l'environnement PHP en visitant https://www.m66.net/phpinfo.php .
En combinant ImageOpenPolygon () et ImageLine () , nous pouvons dessiner de manière flexible diverses figures de polygone qui nécessitent un contrôle de fermeture personnalisé. Cette méthode est particulièrement utile lors du dessin de graphiques complexes ou de génération dynamiquement des graphiques. Essayons-le rapidement!