Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Images > Imagick
Imagick Forum d'entraide pour l'extension Imagick permettant de manipuler des images en PHP (port de l'API ImageMagick).
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/02/2006, 21h20   #1
Membre Expert
 
Avatar de Anduriel
 
Homme
Étudiant
Inscription : février 2004
Messages : 2 163
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2004
Messages : 2 163
Points : 1 275
Points : 1 275
Par défaut [ImageMagick] changer la couleur de fond

Salut,

J'ai cherché dans les tutoriaux mais sans résultat.
Sur le manuel php pour changer la couleur de fond d'une image créée il suffit de faire:

Code :
$background_color = imagecolorallocate ($im, 255, 255, 255);
Pour du blanc.
Le problème c'est que moi ça reste toujours noir.
Voila en entier:

Code :
1
2
3
4
5
6
7
8
$im = @imagecreatetruecolor (100, 50)
        or die ("Impossible de créer un flux d'image GD");
   $px = (imagesx($im) - 7.5 * strlen($string)) / 2;
   $background_color = imagecolorallocate ($im, 255, 255, 255);
   $text_color = imagecolorallocate ($im, 247, 200, 119);
   imagestring ($im, 5, $px, 16,  $string, $text_color);
   imagepng ($im);
   imagedestroy ($im);
Comment faire?
Merci
Anduriel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2006, 21h30   #2
Membre émérite
 
Avatar de Linaa
 
Inscription : avril 2005
Messages : 988
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : avril 2005
Messages : 988
Points : 922
Points : 922
C'est la fonction imagecreatetruecolor()

http://fr3.php.net/manual/fr/function.imagecreatetruecolor.php

Citation:
imagecreatetruecolor() retourne une ressource représentant une image noire
Essaies avec imagecreate()
Linaa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2006, 21h55   #3
Rédacteur/Modérateur
 
Avatar de Michaël
 
Michaël Todorovic
Ingénieur systèmes et réseaux
Inscription : juillet 2003
Messages : 3 493
Détails du profil
Informations personnelles :
Nom : Michaël Todorovic
Âge : 25
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux

Informations forums :
Inscription : juillet 2003
Messages : 3 493
Points : 5 899
Points : 5 899
salut,
imagecreate ne changera rien.
imagecolorallocate ne fait que créer la couleur. sinon, ça voudrait dire que quand tu créé la couleur $text_color pour ton texte, ça remplirait l'image de cette couleur. pas très pratique cette histoire...
pour remplir l'image, il faut utiliser imagefill
Code :
1
2
3
4
5
6
7
8
9
10
$im = @imagecreatetruecolor (100, 50)
        or die ("Impossible de créer un flux d'image GD");
   $px = (imagesx($im) - 7.5 * strlen($string)) / 2;
   $background_color = imagecolorallocate ($im, 255, 255, 255);
   imagefill($im,0,0,$background_color); //0,0 représentant le point de départ du remplissage : origine de l'image : en haut à gauche.
   $text_color = imagecolorallocate ($im, 247, 200, 119);
   imagestring ($im, 5, $px, 16,  $string, $text_color);
header("content-type: image/png");
   imagepng ($im);
   imagedestroy ($im);
Michaël est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2006, 22h02   #4
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Salut

Ajoute juste une ligne dans ton code, où tu veux en fait (mais avant imagepng();) :
Code :
header('Content-type: image/png');
@Le_coyote : extrait de la doc PHP pour toi (je ne le savais pas non plus)
Citation:
Envoyé par Doc PHP
Note : Le premier appel à imagecolorallocate() remplie la couleur de fond.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2006, 18h36   #5
Membre Expert
 
Avatar de Anduriel
 
Homme
Étudiant
Inscription : février 2004
Messages : 2 163
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2004
Messages : 2 163
Points : 1 275
Points : 1 275
Merci à vous
Anduriel est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h32.


 
 
 
 
Partenaires

Hébergement Web