IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[JpGraph] Texte en image


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 14
    Par défaut [JpGraph] Texte en image
    Bonjour,
    je souhaiterais juste, dans une page php, transformer un texte en une image.

    par exemple transformer le texte "Afficher la valeur 123" pour avoir une image valeur.gif (ou png ou jpg) qui serait ce texte mis sous forme d'image dans le répertoire courant du php, sur le site.
    Le but étant de récupérer cette image dans une autre page php. Le besoin étant vraiment d'avoir une image.
    J'ai vu qu'on pouvait faire un affichage avec des LEDs, est-ce possible en texte tout simple ?
    Par contre, il faut à tout prix que ce soit une vraie image et non un llien php passé en image

    est-ce possible ? si oui, comment ?

    merci pour votre aide
    cordialement

  2. #2
    Membre chevronné
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Par défaut
    C'est pour faire un cryptogramme ?

    Si c'est le cas, voici mon code de crypto a moi. Si c'est pas le cas, tu peux toujours le réutiliser pour faire ce que tu veux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php
    session_start();
     
    $array_crypt = array('2', '3', '4', '5', '6', '7', '8', '9', 'A', 'C', 'E', 'F', 'H', 'K', 'M', 'N', 'P', 'R', 'T', 'U', 'W', 'X', 'Y', 'Z');
    $taille_array_crypto = count($array_crypt) - 1;
    $_SESSION['cryptogramme'] = $array_crypt[mt_rand(0, $taille_array_crypto)].$array_crypt[mt_rand(0, $taille_array_crypto)].$array_crypt[mt_rand(0, $taille_array_crypto)];
    $img =  imagecreatetruecolor(60, 25);
    $tmpcolor = imagecolorallocate($img, 0, 0, 102);
    imagefill($img, 0, 0, $tmpcolor);
    $tmpcolor = imagecolorallocate($img, 255, 255, 255);
    imagettftext($img, 14, mt_rand(-10, 10), 9, 20, $tmpcolor, './arial.ttf', $_SESSION['cryptogramme']);
     
    header('Content-type: image/jpg');
    header('Content-Disposition: attachment; filename="'.md5(microtime()).'.jpg"');
    header('Cache-Control: no-cache, must-revalidate'); 
    imagejpeg($img);
    ?>
    En réalité, il faut que tu le place dans un fichier php tout suel, genre crypto.php, et tu l'appels dans ton code HTML via :
    <img src="./crypto.php">

    Dans ta page de test suivante, tu as le contenu qyu a été aléatoirement généré dans la variable $_SESSION['cryptogramme'].

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 14
    Par défaut
    Citation Envoyé par comode Voir le message
    C'est pour faire un cryptogramme ?

    Si c'est le cas, voici mon code de crypto a moi. Si c'est pas le cas, tu peux toujours le réutiliser pour faire ce que tu veux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php
    session_start();
     
    $array_crypt = array('2', '3', '4', '5', '6', '7', '8', '9', 'A', 'C', 'E', 'F', 'H', 'K', 'M', 'N', 'P', 'R', 'T', 'U', 'W', 'X', 'Y', 'Z');
    $taille_array_crypto = count($array_crypt) - 1;
    $_SESSION['cryptogramme'] = $array_crypt[mt_rand(0, $taille_array_crypto)].$array_crypt[mt_rand(0, $taille_array_crypto)].$array_crypt[mt_rand(0, $taille_array_crypto)];
    $img =  imagecreatetruecolor(60, 25);
    $tmpcolor = imagecolorallocate($img, 0, 0, 102);
    imagefill($img, 0, 0, $tmpcolor);
    $tmpcolor = imagecolorallocate($img, 255, 255, 255);
    imagettftext($img, 14, mt_rand(-10, 10), 9, 20, $tmpcolor, './arial.ttf', $_SESSION['cryptogramme']);
     
    header('Content-type: image/jpg');
    header('Content-Disposition: attachment; filename="'.md5(microtime()).'.jpg"');
    header('Cache-Control: no-cache, must-revalidate'); 
    imagejpeg($img);
    ?>
    En réalité, il faut que tu le place dans un fichier php tout suel, genre crypto.php, et tu l'appels dans ton code HTML via :
    <img src="./crypto.php">

    Dans ta page de test suivante, tu as le contenu qyu a été aléatoirement généré dans la variable $_SESSION['cryptogramme'].
    Merci pour ta réponse rapide
    j'ai copié-collé ton code, et la page plante, t'as une idée ?
    http://www.enigmeschristophe-and-co....stat/image.php

    cordialement

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 14
    Par défaut
    Comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    session_start();
     
    $texte = 'Hello 123';
    $img = imagecreatetruecolor(200, 200);
    $tmpcolor = imagecolorallocate($img, 0, 0, 0);
    imagettftext($img, 14, 0, 9, 20, $tmpcolor, './arial.ttf', 'mon texte');
     
    header('Content-type: image/jpg');
    header('Content-Disposition: attachment; filename="'.md5(microtime()).'.jpg"');
    header('Cache-Control: no-cache, must-revalidate'); 
    imagejpeg($img);
    ?>

    la page plante ...
    http://www.enigmeschristophe-and-co....stat/image.php
    merci

  5. #5
    Membre chevronné
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Par défaut
    Ummm, tu ne laisses bien aucun espace entre le début de la page et le <?php ?
    le moindre espace peut la faire planter...
    Par ailleur, il faut que les session fonctionnent chez toi.

    Pour débugger, tu peux mettre les 4 dernieres lignes en commentaires et appeler la page via l'explorateur voir si y'a un message d'erreur, voir un notice.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 14
    Par défaut
    oui, il n'y a que ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    session_start();
     
    $texte = 'Hello 123';
    $img = imagecreatetruecolor(200, 200);
    $tmpcolor = imagecolorallocate($img, 0, 0, 0);
    imagettftext($img, 14, 0, 9, 20, $tmpcolor, './arial.ttf', $texte);
     
    header('Content-type: image/jpg');
    header('Content-Disposition: attachment; filename="'.$_SERVER["DOCUMENT_ROOT"].md5(microtime()).'.jpg"');
    header('Cache-Control: no-cache, must-revalidate'); 
    imagejpeg($img);
    ?>
    et j'ai ça en retour:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Warning: imagettftext() [function.imagettftext]: Could not find/open font in /web/enigmeschristop/www/site/stat/image2.php on line 7
    ÿØÿàJFIFÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC    $.' ",#(7),01444'9=82<.342ÿÛC  2!!22222222222222222222222222222222222222222222222222ÿÀÈÈ"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?ùþŠ( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( Š( ÿÙ
    le "imagettftext" qui plante

    merci

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 14

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 14
    Par défaut
    Ce serait par exemple :
    reste à trouver la fonction CONVERTIR

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    	session_start();
     
    	include ("jpgraph-1.26/src/jpgraph.php");
    	include ("jpgraph-1.26/src/jpgraph_CONVERTIR.php");
     
    	$image = new CONVERTIR($_SESSION["texte"]); 
    	$image->Stroke(image.jpg');
    ?>
    Celà créerait-il le fichier image.jpg ?

  9. #9
    Membre chevronné
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Par défaut
    Genre ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $img = imagecreatetruecolor(200, 200);
    $tmpcolor = colorallocate($img, 0, 0, 0);
    imagettftext($img, 14, 0, 9, 20, $tmpcolor, './arial.ttf', 'mon texte');

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Convertir texte en image
    Par arnaud_verlaine dans le forum Flash
    Réponses: 10
    Dernier message: 26/09/2006, 10h15
  2. fonctions d'image : texte sur image
    Par guy2004 dans le forum Langage
    Réponses: 2
    Dernier message: 10/08/2006, 10h56
  3. [ImageMagick] Cherche à faire une image avec texte et image
    Par dnipro dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 18/05/2006, 15h08
  4. Conversion de texte en image?
    Par sessime dans le forum Langage
    Réponses: 12
    Dernier message: 24/01/2006, 23h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo