• [^] # Re: Marrant mais

    Posté par . En réponse à la dépêche Concevez votre propre couverture de livre O'Reilly!. Évalué à 10.

    Pour générer dynamiquement une image, gd est une très bonne solution et est facile à mettre en oeuvre L'URL que tu cites montre GD utilisé en C, mais on peut aussi l'utiliser depuis PHP (3 ou 4) sans faire appel à un CGI. J'ai déjà utilisé les fonctions offertes par cette bibliothèque pour générer des graphiques de charge, en lisant un fichier texte produit par un script qui écrivait dedans à intervalle régulier. On peut générer dynamiquement des images au format PNG, GIF et JPEG. On peut lire des images pour modification. Il existe plusieurs fonctions genre tracé de ligne, remplissage, écriture avec police particulière, manipulation de palette. J'utilise 2 scripts, un pour la page Web proprement dite, elle contient à un moment l'inclusion de l'image : echo "<img src=\"load_img.php?zoom=1\" alt=\"CPU 1,5,15 min loads\">\n"; Et le script load_img.php ressemble à ça (très fort résumé, en fait il fait 175 lignes) : <? header ("Content-type: image/png"); header ("Pragma: no-cache"); /* forces the browser to reload each time */ $im = @ImageCreate (600, 400) or die ("Cannot Initialize new GD image stream"); $coloraxis = ImageColorAllocate($im, 0, 0, 0); /* black */ $colorload1 = ImageColorAllocate($im, 255, 0, 0); /* red */ ImageString ($im, 1, 100, 0, "1 min load", $colorload1); /* legend */ /* draw axis */ ImageLine ($im, $imgwm, $imgh-$imghm, $imgwm, 0, $coloraxis); /* vert */ ImageLine ($im, $imgwm, $imgh-$imghm, $imgw-1, $imgh-$imghm, $coloraxis); /* horiz */ ImagePng ($im); /* output image */ ?> Voilà, si ça peut servir à quelqu'un.