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] Modifier la taille de police dans une image avec un texte


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 39
    Points : 15
    Points
    15
    Par défaut [GD] Modifier la taille de police dans une image avec un texte
    Bonjour,
    Je doit modifier la police de caractère ou sa taille selon ce code qui m'a été transmit. J'ai donc tenter une $size et un $fonts mais rien ni fait ça ne fonctionne pas...

    Merci d'avance ^^

    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
    header ("Content-type: image/png"); 
    include("Numbers/Words.php");
    $image=imagecreate(300, 708); 
    $blanc=imagecolorallocate($image, 255, 255, 255);
    $noir=imagecolorallocate($image, 0, 0, 0);
    $font='f:\dffg\VeraMoBd.ttf';
    while($dy=mysql_fetch_array($yc)){
    $yenchiffres=$dy['yen'];
    $yl=new Numbers_Words();
    $yenlettres=$yl->toWords($yenchiffres);
    $yenlettres=strtoupper($yenlettres);}
    ////////////////////////////////
    include("euro.php");
    ////////////////////////////////
    $el=new Numbers_Words();
    $eurolettres=$el->toWords($eurochiffres);
    $eurolettres=strtoupper($eurolettres);
    $tauxreport=$taux;
    $taux='1EUR=JPY'.$_POST['taux'];
    $cmd=$_POST['cmd'];
    imagestringup($image, 8, 60, 708, $nom, $noir);
    imagestringup($image, 8, 96, 405, $jours, $noir);
    imagestringup($image, 8, 144, 692, $yenlettres, $noir);
    imagestringup($image, 8, 144, 300, $yenchiffres, $noir);
    imagestringup($image, 8, 170, 692, $eurolettres, $noir);
    imagestringup($image, 8, 170, 337, "EUR",$noir);
    imagestringup($image, 8, 170, 290, $eurochiffres, $noir);
    imagestringup($image, 8, 231, 220, $taux, $noir);
    imagestringup($image, 8, 271, 220, $cmd, $noir);

  2. #2
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Bonjour,
    essaye un truc comme ca ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $CouleurTxt = imagecolorallocate($image, 0, 0, 0);
    $font=imageloadfont("arial.gdf");
     
    imagestring($image, $font , 25, 92, $Prix, $CouleurTxt);
    Guigo

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 39
    Points : 15
    Points
    15
    Par défaut
    Merci je vais tenter

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 39
    Points : 15
    Points
    15
    Par défaut
    Ca ne fonctionne pas il dit qui a une erreur dans l'image...Mais Merci ^^

  5. #5
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    re,
    désole oublie le load font pour le moment. Car sinon il faut que tu import réellement la police...

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 39
    Points : 15
    Points
    15
    Par défaut Voici ce que j'ai pu tester
    Re, pas de Problème Voici le code que j'ai modifier mais voila celui ci ne marche pas.Est ce quelqu'un pourrai m'aider si vous plait.

    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
     
    header ("Content-type: image/png");
    include("Numbers/Words.php");
    $image=imagecreatetruecolor(300, 708);
    $blanc=imagecolorallocate($image, 255, 255, 255);
    $noir=imagecolorallocate($image, 0, 0, 0);
    mysql_connect("", "", "");
    mysql_select_db("");
    $type=$_POST['type'];
    $pass=explode('/', $type);
    $nom=$_POST['nom'];
    $jours=$pass['2'];
    $age=$pass['0'];
    $classe=$pass['1'];
    $area=$pass['3'];
    $yc=mysql_query("SELECT * FROM jrpass WHERE type='$type' LIMIT 1");
    while($dy=mysql_fetch_array($yc)){
    $yenchiffres=$dy['yen'];
    $yl=new Numbers_Words();
    $yenlettres=$yl->toWords($yenchiffres);
    $yenlettres=strtoupper($yenlettres);}
    ////////////////////////////////
    include("euro.php");
    ////////////////////////////////
    $el=new Numbers_Words();
    $eurolettres=$el->toWords($eurochiffres);
    $eurolettres=strtoupper($eurolettres);
    $tauxreport=$taux;
    $taux='1EUR=JPY'.$_POST['taux'];
    $cmd=$_POST['cmd'];
    $font='/www/bo/arial.ttf';
    imagettftext($image, 8, 60, 708, $nom, $noir);
    imagettftext($image, 8, 96, 405, $jours, $noir);
    imagettftext($image, 8, 144, 692, $yenlettres, $noir);
    imagettftext($image, 8, 144, 300, $yenchiffres, $noir);
    imagettftext($image, 8, 170, 692, $eurolettres, $noir);
    imagettftext($image, 8, 170, 337, "EUR", $noir);
    imagettftext($image, 8, 170, 290, $eurochiffres, $noir);
    imagettftext($image, 8, 231, 220, $taux, $noir);
    imagettftext($image, 8, 271, 220, $cmd, $noir);
    $degrees=180;
    $rotate=imagerotate($image, $degrees, 0);
    imagepng($rotate);
     
    $nmb=$_POST['nmb'];
    $tim=time();
    $date=date('Y-m-d', $tim);
     
    mysql_connect("", "", "");
    mysql_select_db("");
     
    $query=("SELECT * FROM report WHERE numero_pass='$nmb'");
    $num_rows=mysql_num_rows($query);
    if($num_rows==NULL){
    $ajoute=mysql_query("INSERT INTO report VALUES('', '$nmb', '$date', '$yenchiffres', '$eurochiffres', '$nom', '$cmd', '$tauxreport', '$age', '$classe', '$jours', '$area', '')");}
    L'erreur afficher est celle ci
    L'image "“http://www.jr-pass.fr/bo/print4.php” ne peut être affichée car elle contient des erreurs."
    Merci d'avance

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 39
    Points : 15
    Points
    15
    Par défaut
    Voici le code pour résoudre mon problème si ça peu aider ^^

    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
    header ("Content-type: image/png");
    putenv('GDFONTPATH=' . realpath('.'));
    $image = @imagecreate(618, 825)
    or die('Cannot Initialize new GD image stream');
     
     
     
    include("Numbers/Words.php");
    $blanc=imagecolorallocate($image, 255, 255, 255);
    $noir=imagecolorallocate($image, 0, 0, 0);
    //mysql_connect("", "", "");
    //mysql_select_db("");
    //$type=$_POST['type'];
    //$pass=explode('/', $type);
    //$nom=$_POST['nom'];
    $jours=2;
    //$age=$pass['0'];
    //$classe=$pass['1'];
    //$area=$pass['3'];
    //$yc=mysql_query("SELECT * FROM jrpass WHERE type='$type' LIMIT 1");
    //while($dy=mysql_fetch_array($yc)){
    //$yenchiffres=$dy['yen'];
    $yenchiffres=25;
    //$yl=new Numbers_Words();
    //$yenlettres=$yl->toWords($yenchiffres);
    //$yenlettres=strtoupper($yenlettres);}
    $yenlettres="dgsdg";
    ////////////////////////////////
    //include("euro.php");
    ////////////////////////////////
    //$el=new Numbers_Words();
    //$eurolettres=$el->toWords($eurochiffres);
    //$eurolettres=strtoupper($eurolettres);
    $eurolettres="Three hundred and thirty Four";
    $eurochiffres=324;
    //$tauxreport=$taux;
    //$taux='1EUR=JPY'.$_POST['taux'];
    $taux="1EUR=JPY 108";
    $nom="BOBBIE KASSPARROFF LORD DARK";
    //$cmd=$_POST['cmd'];
    $cmd=342423; 
    $fonts='COLLEGE.TTF';
    $font='EthBlackExtended.ttf';
    //1er chiffe est la taille de caractere de la police...
    //2eme chiffe est le degree du caractere...
    imagettftext($image, 25*0.69, 90.22, 186, 825, $noir, $fonts, $nom);
    imagettftext($image, 25*0.69, 90.22, 249, 405, $noir, $font, $jours);
    imagettftext($image, 15*0.69, 90.22, 368, 805, $noir, $fonts, $yenlettres);
    imagettftext($image, 25*0.69, 91, 372, 260, $noir, $font, $yenchiffres);
    imagettftext($image, 15*0.69, 90.21, 430, 795, $noir, $fonts, $eurolettres);
    imagettftext($image, 20*0.69, 91, 428, 340, $noir, $fonts, "EUR");
    imagettftext($image, 25*0.69, 91, 428, 260, $noir, $font, $eurochiffres);
    imagettftext($image, 18*0.69, 91, 540, 150, $noir, $fonts, $taux);
    imagettftext($image, 25*0.69, 91, 618, 130, $noir, $font, $cmd);
    $degrees=180;
    $rotate=imagerotate($image, $degrees, 0);
    imagepng($rotate);
    imagedestroy($rotate);
    */

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

Discussions similaires

  1. Réponses: 20
    Dernier message: 18/01/2018, 11h57
  2. Taille de police dans une feuille de données
    Par muphin dans le forum IHM
    Réponses: 3
    Dernier message: 08/09/2014, 17h58
  3. [Débutant] Comment modifier la taille des points dans une legende ?
    Par stodak dans le forum MATLAB
    Réponses: 4
    Dernier message: 28/03/2012, 18h36
  4. Réponses: 0
    Dernier message: 12/01/2009, 18h40
  5. Réponses: 1
    Dernier message: 13/02/2008, 12h48

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