[GD] Rendre une image transparente + ajout d'un rectangle.

Rendre une image transparente + ajout d'un rectangle. [GD] - PHP - Programmation

Marsh Posté le 19-07-2005 à 11:16:03    

Bonjour à tous :hello:,
 
 
En réalité, voici ce que je veux faire :
J'ai une image aux dimensions 100*100.
J'aimerai rajouter un petit rectangle en dessous, pour y indiquer les dimensions.
Au final, l'image fera 100*120 (120 = 100px de l'image principale + 20px pour le rectangle en plus).
 
Pour le moment, j'utilise la technique suivante :
Je créé un rectangle noir de 100*120, avec la taille écrite en texte tout bas.
Et je fusionne avec mon image principale.
Résultat > Après la fusion, j'ai mon image principale + mon rectangle noir en bas :)
 
Mais, ne serait-il pas possible de coller tout bêtement un rectangle noir en dessous de mon image principale au lieu de faire une fusion des deux ?
 
PS : Surtout qu'avec cette satanée fusion, si je créé mon image de fond de 120px en couleurs réelles, le background est noir. Quand je fusionne avec une autre photo PNG de 16M de couleurs avec parties transparentes, la transparence disparait pour laisser place à du noir :/
 
 
Voici le début de mon code :

Code :
  1. $image = imagecreatetruecolor(100,120); // Aux dimensions 100*120
  2. $source = imagecreatefrompng('image.png'); // Aux dimensions 100*100
  3. $noir = imagecolorallocate($image, 0, 0, 0);
  4. $orange = imagecolorallocate($image, 255, 128, 0);
  5. imagefilledrectangle($image, 0, 100, 100,120, $noir);
  6. ImageCopy($image, $source, 0, 0, 0, 0,100,100);


 
Si je veux rendre mon fond transparent, il faudrait que j'utilise la fonction imagecolortransparent(), malheureusement elle ne fonctionne qu'avec la fonction imagecreate() et pas imagecreatetruecolor() :/


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
Reply

Marsh Posté le 19-07-2005 à 11:16:03   

Reply

Marsh Posté le 19-07-2005 à 12:19:41    

http://de3.php.net/imagecolortransparent

Citation :

Note :  La transparence est copiée uniquement avec la fonction imagecopymerge()  et les images en couleur vraies, non pas avec la fonction imagecopy()  ou les images de palette.


---------------
HAHAHA I M USING TEH INTERNET
Reply

Marsh Posté le 19-07-2005 à 22:10:59    

Idem avec la fonction imagecopymerge() pourtant :/


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
Reply

Marsh Posté le 19-07-2005 à 23:02:01    

Mais ça indique bien que la ressource image doit être en couleurs vraies [:spamafote]
T'es sûr que c'est à ce niveau là que ça merde ??  
J'ai perso jamais utilisé de transparence dans mes images, mais selon http://de3.php.net/manual/fr/funct [...] .php#21248 , ça devrait marché avec imagecreatetruecolor()


Message édité par Master p le 19-07-2005 à 23:02:18

---------------
HAHAHA I M USING TEH INTERNET
Reply

Marsh Posté le 19-07-2005 à 23:18:35    

Imagecolortransparent n'a rien à voir malheureusement.
 
J'ai pas mal bossé en GD, la seule solution que j'ai trouvé perso, c'est de créer une image PNG complètement transparente et au lieu de faire imagecreatetruecolor(100,120); je fais $imagedepart=imagecreatefrompng("pngtransparent100x120.png" );
Il y a peut-être mieux, mais je demande à voir parce que bordel, j'en ai bouffé du GD. :D
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed