En PHP, les fonctions de traitement d'image sont fournies par la bibliothèque GD, ImageCreateTrueColor () et ImageOpenPolygon () sont deux des fonctions très utiles. Cet article vous montrera comment créer une image à partir de zéro en utilisant ces deux fonctions et dessiner un polygone simple. Nous allons parcourir étape par étape comment créer une image, définir la couleur de l'image et rendre les graphiques à l'aide de la méthode du polygone.
ImageCreateTrueColor () est une fonction très basique pour créer une véritable ressource d'image couleur. Il reçoit deux paramètres: la largeur et la hauteur de l'image et renvoie une ressource représentant l'image.
<?php
// Créer un large 500 haut 500 Images
$width = 500;
$height = 500;
$image = imagecreatetruecolor($width, $height);
La variable d'image $ renvoyée par cette fonction est la ressource d'image, et vous pouvez l'utiliser pour effectuer les opérations de traitement d'image ensuite.
Dans les images, nous devons généralement définir différentes couleurs pour dessiner des formes, des arrière-plans, etc. ImageColorAllocate () peut être utilisé pour attribuer des couleurs. Il accepte 4 paramètres: ressources d'image, valeurs rouges, vertes et bleues (0-255).
// Affecter la couleur d'arrière-plan et la couleur du polygone
$background_color = imagecolorallocate($image, 255, 255, 255); // Fond blanc
$polygon_color = imagecolorallocate($image, 0, 0, 255); // Polygone bleu
Utilisez ImageFill () pour remplir l'image entière avec la couleur spécifiée. Par exemple, après avoir créé l'image, nous voulons remplir un fond blanc.
// Remplissez la couleur d'arrière-plan
imagefill($image, 0, 0, $background_color);
Ensuite, nous dessinons un polygone en utilisant ImagePolygon () . Les paramètres de cette fonction incluent les ressources d'image, les tableaux de coordonnées de sommet et les nombres de sommets. Chaque sommet d'un polygone est représenté par une coordonnée (x, y).
// Coordonnées de vertex des polygones
$points = array(
150, 150,
350, 150,
400, 350,
200, 400,
100, 300
);
// Dessiner des polygones
imagepolygon($image, $points, 5, $polygon_color);
Enfin, nous devons sortir l'image créée. PHP fournit des fonctions telles que ImagePng () , ImageJPEG () et ImageGif () , et vous pouvez en choisir une pour sortir des images en fonction de vos besoins. Ici, nous utilisons ImagePng () pour enregistrer l'image sous le format PNG.
// Image de sortie au navigateur
header('Content-Type: image/png');
imagepng($image);
// Ou enregistrer en tant que fichier
// imagepng($image, 'polygon_image.png');
Une fois l'image générée, afin d'enregistrer la mémoire, les ressources d'image doivent être publiées.
// Détruiser les ressources d'image
imagedestroy($image);
<?php
// Créer des ressources d'image
$width = 500;
$height = 500;
$image = imagecreatetruecolor($width, $height);
// Attribuer des couleurs
$background_color = imagecolorallocate($image, 255, 255, 255); // Fond blanc
$polygon_color = imagecolorallocate($image, 0, 0, 255); // Polygone bleu
// Remplissez la couleur d'arrière-plan
imagefill($image, 0, 0, $background_color);
// Coordonnées de vertex des polygones
$points = array(
150, 150,
350, 150,
400, 350,
200, 400,
100, 300
);
// Dessiner des polygones
imagepolygon($image, $points, 5, $polygon_color);
// Image de sortie
header('Content-Type: image/png');
imagepng($image);
// Détruiser les ressources d'image
imagedestroy($image);
?>