Télécharger
Noter:

Ajouté le 2016-11-11
Visionné 2442 fois
5/5 (2)

Générateur d'avatar en PHP

Description

Ce générateur d'avatar (ou images psychédéliques) crée une image via PHP avec des polygones dans chaque coins qui se reflètent.

Entièrement aléatoire, les images ne sont jamais les même! La couleur des polygones est aléatoire, ainsi que le fond de l'image.



Exemples:


<?php
//configurations
$config=array();
$config['aleatoire']=1;//0 ou 1, si 1 vous laissez le script faire plus ou moins de coordonnées et de répétitions de polygones
$config['taillex']=50;//largeur de l'image
$config['tailley']=50;//hauteur de l'image
$config['NbrCoordonnees']=8;//nom de coordonnées aux polygones
$config['repetition']=2;//nombre de fois 4 polygones aléatoires
if($config['aleatoire'] == 1){
$config['NbrCoordonnees']=rand(3,15);//nom de coordonnées aux polygones
$config['repetition']=rand(1,25);//nombre de fois 4 polygones aléatoires
}
//on demande d'afficher se fichier en image
header('Content-type: image/png');
// Création d'une image
$image = imagecreatetruecolor($config['taillex'], $config['tailley']);
$bg = imagecolorallocate($image, rand(0,255), rand(0,255), rand(0,255));
// Remplit l'arrière-plan
imagefilledrectangle($image, 0, 0, $config['taillex'], $config['tailley'], $bg);

for($repete=1;$repete<=$config['repetition'];$repete++){
// Alloue des couleurs aléatoires
$colorpolygone = imagecolorallocate($image, rand(0,255), rand(0,255), rand(0,255));
//definition des coordonnées pour le 1er polygone (qui sera dans le coin en haut à gauche, on mettre ensuite le reflet de celui-ci sur les trois autres coins)
$CoordonneesPolygone['hautgauche']=array();
for($i=1;$i<=$config['NbrCoordonnees'];$i++){
$CoordonneesPolygone['hautgauche'][$i]=array("x"=>rand(0,($config['taillex']/2)),"y"=>rand(0,($config['taillex']/2)));
}
// Définition du tableau de points pour les 4 polygones (reflet du polygone haut gauche)
$polygone['hautgauche'] = array();
$polygone['hautdroite'] = array();
$polygone['basdroite'] = array();
$polygone['basgauche'] = array();
for($i=1;$i<=$config['NbrCoordonnees'];$i++){
//ajout des coordonnées pour le polygone haut gauche
$polygone['hautgauche'][]=$CoordonneesPolygone['hautgauche'][$i]['x'];
$polygone['hautgauche'][]=$CoordonneesPolygone['hautgauche'][$i]['y'];
//ajout des coordonnées pour le polygone haut droite
$polygone['hautdroite'][]=$config['taillex']-$CoordonneesPolygone['hautgauche'][$i]['x'];
$polygone['hautdroite'][]=$CoordonneesPolygone['hautgauche'][$i]['y'];
//ajout des coordonnées pour le polygone bas droite
$polygone['basdroite'][]=$config['taillex']-$CoordonneesPolygone['hautgauche'][$i]['x'];
$polygone['basdroite'][]=$config['tailley']-$CoordonneesPolygone['hautgauche'][$i]['y'];
//ajout des coordonnées pour le polygone bas gauche
$polygone['basgauche'][]=$CoordonneesPolygone['hautgauche'][$i]['x'];
$polygone['basgauche'][]=$config['tailley']-$CoordonneesPolygone['hautgauche'][$i]['y'];
}
// Dessine les polygones
imagefilledpolygon($image, $polygone['hautgauche'], $config['NbrCoordonnees'], $colorpolygone);
imagefilledpolygon($image, $polygone['hautdroite'], $config['NbrCoordonnees'], $colorpolygone);
imagefilledpolygon($image, $polygone['basdroite'], $config['NbrCoordonnees'], $colorpolygone);
imagefilledpolygon($image, $polygone['basgauche'], $config['NbrCoordonnees'], $colorpolygone);
}
imagepng($image);//on affiche l'image
imagedestroy($image);//on libère la mémoire
?>

Besoin de travaux pour votre site ?

Je suis là pour vous aider !

Commentaires

Ajouter un commentaire

Commenter
Pseudo/Nom *
Email *
Message *
Captcha *
memo1
Commenter

Les champs marqués d'un * sont obligatoires.

Pas encore de commentaire, soyez le premier!

Retour à la liste des scripts