GD : redimenssioner Gif en conservant sa transparence ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : GD : redimenssioner Gif en conservant sa transparence ?

par insomniak » 17 juin 2006, 00:44

Oui en effet mais si tu regardes de plus pret, c'est bien ce que j'ai utilisé...
En fait, tu n'es pas obligé de mettre une couleur noire.
Ce qu'il faut c'est récupérer la couleur transparente de l'image source avec la fonction imagecolortransparent puis créer ta nouvelle image aux dimensions voulues avec imagecreatetruecolor, remplir cette image avec la couleur de transparence puis assigner cette couleur de transparence en faisant un imagecolortransparent sur l'image de destination et enfin copier le gif resizé dans l'image de destination.
Un conseil : préferer imagecopyresized plutot que imagecopyresampled car le resampled deteriore les couleurs et donc la transparence merdouille.

Voilou !
@++

par Mouet » 16 juin 2006, 10:57

Tu dois spécifier une couleur de transparence en l'occurence, le noir
int imagecolortransparent ( resource image [, int color] )

par insomniak » 16 juin 2006, 02:06

Salut,

Bah apparement cela ne fonctionne pas :s
grosso modo voici comment j'ai procédé :

je récupere mon image originale avec un $source = imagecreatefromgif...
Puis je fais un $transparence = imagecolortransparent($source)
je créé mon image de destination avec imagecreatetruecolor
je fais mon redimensionnement avec imagecopyresampled et je place dans la destination
je recopie la transparence dans ma nouvelle image via imagecolortransparent($destination,$transparence)
et enfin je fais mon imagegif pour stocker dans mon fichier.

Le fond reste noir :(
Any idea ? merci d'avance
++

par Mouet » 15 juin 2006, 18:24

Á la limite, utilise imagecolortransparent() :D

GD : redimenssioner Gif en conservant sa transparence ?

par Insomniak » 15 juin 2006, 18:15

Bonjour,

Je cherche actuellement s'il existe un moyen de redimenssioner une image gif ayant une couleur de transparence tout en la conservant ?
A l'heure actuelle, ma classe servant à redimenssioner fonctionne mais zappe la couleur de transparence et je me retrouve donc avec une image avec un fond.

Sauriez vous si cela est possible ?
Merci d'avance
@++