Oui, je vais faire cela :)
Alors pour créer des images il nous faudra une librairie nommer GD / GD2 J'ai actuellement sur la version PHP5 la GD2.
Voir : Librairie GDune documentation remplie d'information.
Alors commençons.
Je souhaiterais :
Pouvoir avec un contenu texte, en image sans avoir à la créer de mais main.
Pour cela j'informe PHP que l’entête et une images en mettant :
header ("Content-type: image/png");
Maintenant il me faut des dimensions :
$image = imagecreate(W, H);
(W = Width, H = Height).
Dans cette exemple je veux que mon image soit de 200 de longueur et 50 d'hauteur donc :
$image = imagecreate(200,50);
Maintenant je veux une couleur pour mon future texte !
Ici par exemple je veux un texte en noir, et un fond blanc que je veux rendre transparent !
Pour cela je créer un variable nommé : "Noir"
$noir = imagecolorallocate($image, 0, 0, 0);
0,0,0 = #000000, black, ici il nous faut le code en RVB soit 0, 0, 0.
Pareil pour le blanc mais cette foi le code RVB et 255,255,255, ont obtient donc :
$blanc = imagecolorallocate($image, 255, 255, 255);
Maintenant je veux un contenu de texte dans cette image alors j'utilise imagestring, j'obtient
imagestring(SRC, FONT, X, Y, TEXT, COLOR);
Alors pour cela je note que SRC et notre variable image ont obtient :
imagestring($image, FONT, X, Y, TEXT, COLOR);
Pour FONT ses 1, 2, 3, 4 où 5 pour les polices internes d'encodage.
Je vais utiliser ici le numéro 4
J'obtient :
imagestring($image, 4, X, Y, TEXT, COLOR);
Pour X & Y ses la position du texte, je veux que X soit 35, et Y 15
j'obtient donc :
imagestring($image, 4, 35, 15, TEXT, COLOR);
/!\ À savoir :
X : coordonnée du coin en haut, à gauche.
Y : coordonnée du coin en haut, à gauche.
Maintenant je veux mon texte, alors je modifie TEXT par ma chaîne de caractère ici je veux que ce soit "Grafikart <3".
j'obtient donc :
imagestring($image, FONT, 35, 15, "Grafikart <3", COLOR);
Je veux pour finir la couleur du texte en noir, j'utiliserais donc ma variable $noir.
J'obtient :
imagestring($image, FONT, 35, 15, "Grafikart <3", $noir);
imagestring dessine une chaîne sur une ligne horizontale, dans l'image image, avec le coin en haut à gauche aux coordonnées (x, y) (le coin supérieur gauche est l'origine (0,0)) avec la couleur color.
Je veux maintenant rendre mon fond blanc en transparent pour avec donc un PNG, j'utiliserais ici la fonction : imagecolortransparent.
imagecolortransparent(SRC, COLOR);
SRC = notre variable $image
COLOR = Qu'elle couleur veux t'ont rendre transparent
Ici SRC ses $image, et notre couleur et $blanc !
J'obtient :
imagecolortransparent($image, $blanc);
Et pour fini (Oui enfin :p), je sort mon image en PNG !
j'utilise donc : imagepng(SRC); (Je ne me répéterais plus sur le mot SRC.
J'obtient :
imagepng($image);
Résultat :
<?php
header("Content-type: image/png");
$image = imagecreate(200,50);
$noir = imagecolorallocate($image, 0, 0, 0);
$blanc = imagecolorallocate($image, 255, 255, 255);
imagestring($image, 4, 35, 15, "GRAFIKART <3", $noir);
imagecolortransparent($image, $blanc);
imagepng($image);
Voilà ont à créer notre image avec notre contenu de texte, et un font transparent je veux l'afficher maintenant sur ma page j'utiliserais la balise classique de l'HTML soit <img src="SRC">.
SRC serra le chemin de notre fichier PHP contenant l'header de type image PNG j'obtiendrez :
<img src="image.php">
Voilà cordialement ! =)