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] Imagecopy et problème avec une coloration noir


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut [GD] Imagecopy et problème avec une coloration noir
    Bonjour,

    J'essaye de faire un script qui génère automatiquement un texte sur une image. Mais, le problème c'est que lors de la copie du texte sur l'image, une partie de l'image est remplite de noir :
    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
     
    <?php		
        header ("Content-type: image/png");
    	$imageTitre = imagecreatetruecolor(500, 60);//image contenant le texte du titre
    	$imageFichier = "121240b.jpg";
    	$screenShoot = imagecreatefromjpeg($imageFichier);//image contenant la photo sur laquelle on va mettre le texte
    	$nomCarte = $_GET['nomCarte'];
     
    	//couleurs
    	$transparent = imagecolorallocatealpha($imageTitre, 255, 255, 255, 127);
    	$gris = imagecolorallocate($imageTitre, 200, 200, 200);
    	$blanc = imagecolorallocate($imageTitre, 255, 255, 255);
    	$noir = imagecolorallocate($imageTitre, 0, 0, 0);
    	$rouge = imagecolorallocate($imageTitre, 255, 0, 0);
    	$grisDePolice = imagecolorallocate($imageTitre, 236, 227, 203);
     
    	//chargement de la police de caractère
    	$font = './tf2build.ttf';
     
    	//on remplit le titre d'une couleur transparente
    	imagefill($imageTitre, 0, 0, $transparent);
     
    	/*imagettftext($imageTitre,17,0,20, 20,$noir, $font, $nomCarte);
    	imagecopy ( $imageTitre, $imageTitre, 0, 0, 2, 2, 500, 60 );*/
     
    	//on place le texte
    	imagettftext($imageTitre,17,0,20, 20,$grisDePolice, $font, $nomCarte);
     
    	//recadrage du texte de manière a garder que le cadre intéressant
    	$cadreTexte = imageftbbox  ( 17  , 0  , $font  , $nomCarte );
    	$widthTitre = $cadreTexte[2]-$cadreTexte[6]+10;
    	$heightTitre = $cadreTexte[3]-$cadreTexte[7]+10;
    	$crop = imagecreatetruecolor($widthTitre, $heightTitre);
    	imagefill  ( $crop  , 0  , 0  , $transparent  );
    	imagecopy ( $crop, $imageTitre, 0, 0, $cadreTexte[6]+19, $cadreTexte[7]+22, $widthTitre, $heightTitre );
    	$imageTitre = $crop;
     
     
    	//redimensionnage et recadrage de la photo de manière à ce qu'elle ne fasse que 425 pixel de large
    	$taille = getimagesize  ( $imageFichier);
    	$width = 425;
    	$height = $taille[1] / ($taille[0]/425); // hauteur / (largeur / taille voulu)
    	$crop2 = imagecreatetruecolor($width, $height);
    	imagefill  ( $crop2  , 0  , 0  , $transparent  );
    	imagecopyresampled    ( $crop2  , $screenShoot  , 0  , 0 , 0  , 0    , $width  ,$height , $taille[0]  , $taille[1]);
    	$screenShoot = $crop2;
     
    	imagecopy( $screenShoot, $imageTitre, 0, 20, 0, 0, $width, $height);
    	ImagePng($screenShoot);
     
    ?>
    et voici le résultat :


    Merci d'avance de votre aide.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 71
    Points : 70
    Points
    70
    Par défaut
    Bonjour,

    Que se passe t'il si tu modifies cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $imageTitre = imagecreatetruecolor(500, 60);
    Par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $imageTitre = imagecreatetruecolor(500, 600);
    Courage, tu y es presque!

    Dans l'attente de ta réponse, je te souhaite une très agréable fin de journée,
    Cdt,

    Omageus

Discussions similaires

  1. Problème avec une UDF
    Par kanmaber dans le forum Bases de données
    Réponses: 2
    Dernier message: 27/08/2004, 23h42
  2. [JBOSS] [Struts] Problème avec une application
    Par Tiercel dans le forum Wildfly/JBoss
    Réponses: 5
    Dernier message: 13/07/2004, 13h50
  3. Problème avec une instruction OUTER /Postgres
    Par Volcomix dans le forum Langage SQL
    Réponses: 14
    Dernier message: 21/04/2004, 16h56
  4. problème avec une requête imbriquée
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2003, 10h29
  5. Problème avec une procédure stockée
    Par in dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/05/2003, 15h33

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