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 :

[GD] Texte sur l'image


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut [GD] Texte sur l'image
    Bonjour,

    je viens de créer une image en php qui affiche l'heure et la date du jour.
    Mais ce que je n'arrive pas à faire, c'est d'écrire le texte sur plusieurs lignes

    J'ai essayé les \n et <br> mais cela ne fonctionne pas.

    Aussi, je souhaiterais savoir comment changer la police aléatoirement
    genre, une fois le texte est en "Time New Roman", la fois suivante en "Comic Sans MS", puis en "Arial", ...

    Comment faire?

    Merci d'avance

    Jacko2


    si ca peut aider, voici mon code

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
     
    <?php
    header ("Content-type: image/png");
     
     
    $image = imagecreate(300,50);
     
     
    $orange = imagecolorallocate($image, 255, 128, 0);
    $bleu = imagecolorallocate($image, 0, 0, 255);
    $bleuclair = imagecolorallocate($image, 156, 227, 254);
    $noir = imagecolorallocate($image, 0, 0, 0);
    $blanc = imagecolorallocate($image, 255, 255, 255);
     
     
    $jour = date("d");
    $mois = date("m"); 
    $annee = date("Y");
    $jourSemaine = date("w");
     
    $message = "";
     
    	switch ($mois)
    	{ 
    		case 1: 
    			$mois = "janvier";break; 
    		case 2: 
    			$mois = "février"; 
    			break; 
    		case 3: 
    			$mois = "mars"; 
    			break; 
    		case 4: 
    			$mois = "avril"; 
    			break; 
    		case 5: 
    			$mois = "mai"; 
    			break; 
    		case 6: 
    			$mois = "juin"; 
    		    break; 
    		case 7: 
    			$mois = "juillet";
    			break; 
    		case 8: 
    			$mois = "août"; 
    			break; 
    		case 9: 
    			$mois = "septembre"; 
    			break; 
    		case 10: 
    			$mois = "octobre"; 
    			break; 
    		case 11: 
    			$mois = "novembre"; 
    			break; 
    		case 12: 
    			$mois = "décembre";
    			break; 
    	}
     
    	switch($jourSemaine) 
    	{
    		case 0:
    			$jourSemaine = "Dimanche";
    			break;
    		case 1:
    			$jourSemaine = "Lundi";
    			break;
    		case 2:
    			$jourSemaine = "Mardi";
    			break;
    		case 3:
    			$jourSemaine = "Mercredi";
    			break;
    		case 4:
    			$jourSemaine = "Jeudi";
    			break;
    		case 5:
    			$jourSemaine = "Vendredi";
    			break;
    		case 6:
    			$jourSemaine = "Samedi";
    			break;
    	}
     
    $date = $jourSemaine . " " . $jour . " " . $mois . " " . $annee . ", ";
    $heure = date("H") . "h" . date("i") . ".";
     
    $message = $date . $heure;
     
    $auteur = "By 98673";
     
     
    imagestring($image, 4, 30, 15, $message, $noir);
    imagecolortransparent($image, $orange);
     
    imagepng($image);
    ?>

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    Concernant l'écriture sur plusieurs lignes, le problème est régler,
    il me reste à pouvoir changer la police de caractères dont je n'ai toujours pas trouvé de solutions

  3. #3
    Membre confirmé
    Avatar de mathieugut
    Profil pro
    Webmaster
    Inscrit en
    Mars 2008
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2008
    Messages : 225
    Points : 476
    Points
    476
    Par défaut
    Salut,

    Alors pour la police c'est ici :

    http://mtodorovic.developpez.com/php...=page_3#LIII-2 (Paragraphe III-2)

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    Bonjour,

    pour la police de caractères c'est ok.

    J'ai essayé d'appliquer une police aléatoire à mon texte. Mais cela ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?php
    $tableau = array("comicsansms.gdf", "almosnow.gdf", "algerian.gdf", "times.gdf", "arial.gdf");
     
    $font_alea = array_rand($tableau, 1);
     
     
    $font = imageloadfont($tableau[$font_alea[0]]);
     
     
    imagestring($image, $font, 30, 15, $message, $noir);
    ?>
    avant de tester le code ci-dessus, j'ai d'abord fait un test pour récupérer une valeur aléatoirement dans un tableau, et cela a fonctionné

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
     
    $tableau = array("xyz" ,"TOTO", "bonjour", "au revoir", "salut", "coucou", "ca va?");
     
    $font_alea = array_rand($tableau, 1);
     
     
    echo $tableau[$font_alea];
     
    ?>
    merci d'avance

    jacko2

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 110
    Points : 53
    Points
    53
    Par défaut
    ok c'est bon, j'ai reussi a résoudre le problème

    c'était parce que j'avais oublié de mettre le nom du répertoire dans imageloadfont

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

Discussions similaires

  1. [HTML] HTML: Superposer du texte sur une image
    Par claralavraie dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 09/02/2006, 14h44
  2. [HTML][DREAMWEAVER] Texte sur une image
    Par Nicos77 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 12/10/2005, 10h43
  3. Centrer un texte sur une image créée dynamiquement
    Par rigolman dans le forum Langage
    Réponses: 7
    Dernier message: 11/10/2005, 18h22
  4. Positionnement de texte sur une image
    Par inddzen dans le forum Windows
    Réponses: 2
    Dernier message: 08/08/2005, 13h22
  5. [HTML]Peut-on écrire un texte sur une image ?
    Par flogreg dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 28/02/2005, 18h24

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