COMBINER DEUX IMAGES AVEC LA LIBRAIRIE GD (PNG OU JPEG) AVEC TRANSPARENCE DE L'I

Messages postés
629
Date d'inscription
mercredi 3 juillet 2002
Statut
Membre
Dernière intervention
9 octobre 2006
- - Dernière réponse : pifou25
Messages postés
150
Date d'inscription
lundi 13 octobre 2003
Statut
Membre
Dernière intervention
21 décembre 2014
- 6 juil. 2007 à 18:04
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/26070-combiner-deux-images-avec-la-librairie-gd-png-ou-jpeg-avec-transparence-de-l-image-par-dessus-l-autre

Afficher la suite 
pifou25
Messages postés
150
Date d'inscription
lundi 13 octobre 2003
Statut
Membre
Dernière intervention
21 décembre 2014
-
super! mais ça veut dire quoi :
# Selection du premier pixel de l image overlay (a la position 0,0) et utiliser
# la couleur de ce pixel comme couleur transparente
suis je obligé de mettre la couleur transparente en 0, 0 pour que ça marche?? y'a pas une méthode générique pour obtenir la couleur de transparence?
capoueidiablo
Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
1 -
Cette fonction permet de fusionner deux images gif ayant toute deux une transparence et conserve cette dernière ...
  function mergeAlpha ($url, $logo) {
      /* on pourrait par exemple rendre ca un peu plus générique :
      $ext = strtolower(end(explode('.', $image_path)));
      if ($ext == "gif") on appel imagecreatefromgif
      if ($ext == "png") on appel imagecreatefrompng et ainsi de suite
      */
      $url  =  imagecreatefromgif ($url);
      $logo =  imagecreatefromgif ($logo);
  
      $bwidth  = imagesx($url);
      $bheight = imagesy($url);
      $lwidth  = imagesx($logo);
      $lheight = imagesy($logo);
      
      imagealphablending ($url, true);      
      imagecopy ($url, $logo, 0, 0 ,0 ,0 , $lwidth, $lheight);
      
      return $url;
  }
  
  /* how to call me */
  header ("Content-type: image/gif");
  imagegif (mergeAlpha ("1.gif", "un.gif") );
yakou32
Messages postés
33
Date d'inscription
dimanche 14 mars 2004
Statut
Membre
Dernière intervention
3 avril 2015
-
Cool !

Sinon le 100 dans "imagecopymerge" c'est pour le niveau de transparence ? on peut fusionner en conservant la transparence de la permière ?
Magidev
Messages postés
250
Date d'inscription
mardi 24 octobre 2000
Statut
Membre
Dernière intervention
28 août 2009
-
Lol :-)
cs_iubito
Messages postés
629
Date d'inscription
mercredi 3 juillet 2002
Statut
Membre
Dernière intervention
9 octobre 2006
-
hop, in ze favoris :-)