Le langage de programmation , PHP (Hypertext Preprocessor ) est une bibliothèque graphique appelé graphique draw ( GD) . GD vous permet de créer dynamiquement des images en fonction de l'évolution des circonstances , telles que des graphiques qui sont toujours mises à jour ou des filigranes sur les images téléchargées par l'utilisateur . Si vous voulez dessiner un coeur ou toute autre forme, à aiguiser vos compétences pour créer n'importe quel type d'image que vous voulez permettra d'élargir les possibilités de ce que vous pouvez faire avec la bibliothèque GD . Instructions
1
Ouvrez un éditeur de texte qui ne fait pas riche formatage de texte, tel que Bloc-notes, tapez le tag PHP d'ouverture : . < Php
2
écrire une fonction de Bézier pour dessiner des courbes . La bibliothèque de fonctions GD ne comprend pas une telle fonction , donc créer votre propre (voir Ressources) . La fonction suivante utilise la fonction GD " imagesetpixel », qui définit un pixel aux coordonnées indiquées par les deuxième et troisième paramètres . Le quatrième paramètre spécifie la couleur et, comme avec la plupart des fonctions GD , le premier paramètre est un identifiant d'image . Fonction
Bézier ( & $ img , $ x, $ y, $ couleur, $ res ) {< br >
$ cx = 3 * ( $ x [1 ] - $ x [ 0]);
$ bx = 3 * ( $ x [ 2] - $ x [1 ] ) - $ cx ;
$ ax = $ x [ 3] - $ x [0] - $ cx - $ bx ;
$ cy = 3 * ( $ y [1] - $ y [0 ] ) ;
$ par = 3 * ( $ y [2] - $ y [1] ) - $ cy ;
$ ay = $ y [3] - $ y [0 ] - $ cy - $ par ;
for ($ i = 0; $ i <= résolution $ ; $ i + +) {
$ t = $ i /$ res ;
$ xt = $ ax * pow ( $ t , 3) + $ bx * pow ( $ t , 2) + cx $ * $ t $ x + [0];
$ yt = $ ay * pow ( $ t , 3) + $ par * pow ( $ t , 2) + $ cy * $ t + $ y [0];
imagesetpixel ($ img , round ( $ xt) , ronde ( yt $ ) , $ color) ;
} }
3
initialiser l'image et les couleurs dont vous avez besoin . Dans l'exemple de code suivant, l'image est initialisée à 200 par 200 pixels , en utilisant la fonction « imagecreate " , qui crée également l' identifiant d'image "$ img . " La couleur rouge et blanche sont initialisés avec la fonction " imagecolorallocate " en spécifiant les valeurs de 0 à 255 pour le rouge , le vert et le bleu. La première couleur initialisée deviendra la couleur de fond
$ img = imagecreate (200, 200); .
$ Blanc = imagecolorallocate ($ img , 255, 255 , 255) ;
$ rouge = imagecolorallocate ($ img , 255, 0, 0);
4
créer deux tableaux pour le x et y coordonnées des quatre points qui détermineront la forme de la courbe de Bézier . Pour spécifier la forme de la courbe , penser en termes de deux vecteurs tangents , dont l'ampleur détermine la quantité de balancer la direction du vecteur a sur la courbe , un peu comme la trajectoire d'un ballon de tomber dans un vent fort . Le premier des quatre points spécifie l'une des extrémités de la courbe et la queue du premier vecteur , et la seconde spécifie la tête du vecteur . La distance entre les points correspondant à la grandeur et de leur position relative détermine la direction . Le troisième point est la tête de la deuxième vecteur et le quatrième point est la queue du vecteur et l'autre extrémité .
Dans l'exemple suivant , les quatre points sont (100 , 40) , (150, -10) , (250 , 80) et ( 100 , 180 ) , où l'angle supérieur gauche de l'image est ( 0 , 0) . Les coordonnées x pour les points de terminaison sont tous deux à 100 , ce qui leur centre dans la toile de gauche à droite . Les coordonnées y indiquer le premier point d'extrémité 40 est au -dessus de l'autre à 180 . Les têtes de vecteur sont au-dessus et à droite de leurs critères respectifs. Séparez les x et y coordonnées dans leurs propres tableaux:
$ x_coords = array (100 , 150, 250 , 100);
$ y_coords = array (40 , -10, 80 , 180) ;
5
Tracer la courbe de la fonction de Bézier créé à l'étape 2. Dans l' exemple de fonction , le premier paramètre est l'identificateur de l'image , les deux paramètres suivants sont les matrices pour les x et y les coordonnées , le quatrième est la couleur , et la dernière est la résolution. Le paramètre de résolution détermine le nombre de points à tracer , donc spécifier un plus grand nombre de courbes bien définies. Par exemple, tapez :
Bézier ($ img , $ x_coords , y_coords $ , $ rouge, 500);
6
redéfinir les coordonnées pour tracer la courbe sur le côté gauche de le cœur , et tracer avec la fonction de Bézier . Les critères d'évaluation pour le virage à gauche sont les mêmes que ceux de la droite. La seule chose qui change est la coordonnées x pour les têtes de vecteur . Les nouvelles doivent être le plus à gauche du centre que les précédents sont à la droite du centre dans le but de chaque côté pour être comme une image miroir de l'autre . Par exemple, tapez :
$ x_coords [1] = 50 ;//Premier chef de vecteur était de 150
$ x_coords [2] = -50 ;//Deuxième tête de vecteur était de 250 . . Photos
Bézier ($ img , $ x_coords , y_coords $ , $ rouge, 500);
7
Afficher l'image et détruire l'objet image à libérer la mémoire. La fonction " tête " est nécessaire pour le navigateur va traiter la sortie comme une image. Fin du fichier avec la fermeture du tag PHP. Par exemple, tapez : tête
( "Content- type: image /png ");
imagepng ($ img ) ;
imagedestroy ($ img ) ; < br >
Photos