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 :

[ImageMagick] Mixer une image Gif et PNG


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 158
    Par défaut [ImageMagick] Mixer une image Gif et PNG
    Bonsoir,

    j'aimerais mixer deux images :
    -une image gif
    - et une image PNG transparente

    en effet la transparence PNG est beaucoup plus propre...

    avec imagecopy ca ne fonctionne pas... quelqu'una urait il une idée ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 158
    Par défaut
    personne ne sait pourquoi on ne peux pas mixer ces deux images alors que mixer du gif et du jpegou du jpeg et du png marche parfaitement ??

  3. #3
    Expert confirmé
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Par défaut
    salut,
    alors déjà, on ne dit pas mixer deux images... ça me fait penser que tu prends deux images, tu les balances dans un mixeur, tu l'allumes et t'obtiens un truc plus ou moins bien... ce que tu veux, c'est la fusion d'images

    c'est la fonction imagecopymerge qu'il te faut (page 27 de mon tuto)
    tu charges tes deux images avec imagecreatefromgif et imagecreatefrompng. ensuite, tu imagecopymerge ton gif dans png

    seul problème : pour faire son malin, ie (même le 6 je crois) ne sait pas gérer correctement les images png avec une profondeur de couleurs supérieure à 8 bits mais firefox oui

    le mieux malheureusement est de rester avec gif pour que les windowsiens avec ie puissent voir correctement tes images, merci micro$oft

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 158
    Par défaut
    ouai mais le probleme c que je veux faire le contraire... mettre un logo PNG sur une image Gif dc au final ca reste du gif... et ca meme avec imagecopymerge ca fnctionne pa...

  5. #5
    Expert confirmé
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Par défaut
    tu pourrais faire voir tes deux images que j'essaie un peu

  6. #6
    Membre émérite
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Par défaut
    le mieux malheureusement est de rester avec gif pour que les windowsiens avec ie puissent voir correctement tes images, merci micro$oft
    Tu peux très bien faire du PNG 8bits (256 couleurs donc). IE l'affichera très bien, et le fichier sera souvent plus petit qu'en GIF. (mais toujours aussi moche )




    Pour le problème plus haut : quand tu dis "ça marche pas", ce serait bien de dire ce qui se passe exactement...

    Il se peut que ce soit un problème de palette de couleur non ?

  7. #7
    Expert confirmé
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Par défaut
    ça doit être un problème de palette : le png doit être en 16b et du coup, ça devient... heu... moche, il faut le dire
    mais malheureusement, on n'y peut rien tant que ie n'aura pas changé. ou alors tu interdit les ie-istes et presque plus personne ne viendra sur ton site.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 158
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    header ("Content-type: image/gif"); 
     
    // Crée l'image 
    $im =  imagecreatefromgif("photo.gif");  
    $s_src = imagecreatefrompng ("logo.png"); 
     
    imagecopymerge($im, $s_src,0, 0, 0, 0, 200, 100, 50); 
     
     
    // Affiche 
    ImageGif ($im);
    Mes deux images ont la meme taille, yen a une en transparence, c limage PNG, et en faisant ca, ca ne maffiche uniquement que photo.gif avec un effet alpha leger... en aucun cas je ne vois mon logo.png... c bizare...

  9. #9
    Expert confirmé
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Par défaut
    essaie ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // Crée l'image
    $im =  imagecreatefromgif("photo.gif"); 
    $s_src = imagecreatefrompng ("logo.png");
     
    $largeur = imagesx($s_src);
    $hauteur = imagesy($s_src);
     
    imagecopymerge($im, $s_src,0, 0, 0, 0, $largeur, $hauteur, 50);
     
    header ("Content-type: image/gif");
    // Affiche
    ImageGif ($im);
    n'hésite pas à changer le 50 en 0 ou 100 pour voir si ça change

    tu peux nous passer les images ou c'est top secret ?

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 158
    Par défaut
    en fait ca fai la mem chose... limage de fond se rnd plus ou moin transparente selon le chament du taux de copymerge masi lautre napparait pas !

    ah mince on peu pa mettre de piece jointe ici ??

    jai une image en transparence png 24,c 'est un texte ecris en blanc sur un fon transparent...

    et lautre c une image gif avec 256 coul...

    jlaurai bien join ici mais je voi pa commen inserer un fichier...

  11. #11
    Membre émérite
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Par défaut
    A priori il faudrait que tu passes en 32bits avant. Etant donné que je n'ai pas trouvé de fonction le faisant (il me semblait qu'il y avait une fonction imagetruecolor(), mais je ne la vois pas dans la doc) ; une autre solution est de créer une image "vide" en 32bits, d'y coller ton image Gif, et ensuite de travailler sur celle ci.

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 158
    Par défaut
    ah ca rallonge le code... ok, mais comment precise ton 32 bit quand on crée une image vide ?

  13. #13
    Membre émérite
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Par défaut
    imagecreatetruecolor()

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 158
    Par défaut
    ah oaui ?? je croayia que ca fonctionnai pa avec le gif ca...

    je vai tester...

  15. #15
    Membre émérite
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Par défaut
    utilises imagecreatetruecolor pour créer une image VIDE. Et ce n'est qu'ensuite que tu copies ton image GIF (déjà chargée) dedans.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ImageMagick] Redimensionner une image JPEG PNG GIF
    Par Stouille89 dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 25/08/2007, 21h10
  2. [ImageMagick] Parcourir une image pixel par pixel
    Par kip dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 05/10/2005, 14h10
  3. Comment convertir une image bmp en png??
    Par Leclair2000 dans le forum Langage
    Réponses: 2
    Dernier message: 03/05/2005, 08h15
  4. [ImageMagick] Générer une image à partir de plusieurs images ?
    Par fichtre! dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 16/02/2005, 15h32
  5. [ImageMagick] Tronquer une image
    Par tomtoad dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 08/01/2005, 21h12

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