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 :

[GD] Fusion de 2 images impossible


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Par défaut [GD] Fusion de 2 images impossible
    Bonjour,

    Oh non, elle ne doit pas être impossible cette fusion, toujours est-il que je galère depuis 2-3 jours là dessus et il faut que je me force a arrêter de perdre du temps là dessus puisque d'une part je suis débutant avec GD, et que deuxièmement j'ai 3000 autres choses à faire. De plus, je pense que pas mal de "pro du GD" si je puisse dire trouveront le pb en 2-2...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
    <?php
    header ("Content-type: image/jpeg"); // C'est une image (nan sérrieux ?)
     
    $a = date("Y"); // l'année (pour le copyright)
     
    if(!isset($_GET['img'])){ // s'il n'y a pas d'image en GEt, on lui en donne une par défaut
    	$img = "/img/inconnu.jpg";
    }
    else{ // Sinon, on prend l'image concernée
    	$img = "/img/".$_GET['img'].".jpg";
    }
     
    /****************************************************
    	1 : Récupération de la photo à partir du get	*
    *****************************************************/
     
    $photo = imagecreatefromjpeg($img);
     
    /********************************************************
    	2	: Création d'une image vierge pour notre texte	*
    *********************************************************/
     
    $copyright = imagecreate(200,50);
     
    // Définition des couleurs
    //$bleuclair = imagecolorallocate($copyright, 156, 227, 254);
    $noir = imagecolorallocate($copyright, 0, 0, 0);
    //$blanc = imagecolorallocate($copyright, 255, 255, 255);
     
    // Ecriture de texte de copyright
    imagestring($copyright, 4, 35, 15, "CC $a, http://Mayart.tk", $blanc);
    imagecolortransparent($copyright, $noir); // On rend le fond noir transparent
     
    // Tadam, le copyright est la !
    imagepng($copyright);
     
     
    /************************************
    	3	: Fusion des deux images	*
    *************************************/
     
    // On charge d'abord les images
    $source = imagecreatefrompng($copyright); // Le copyright est la source
    $destination = imagecreatefromjpeg($photo); // La photo est la destination
     
    // Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image
    $largeur_source = imagesx($source);
    $hauteur_source = imagesy($source);
    $largeur_destination = imagesx($destination);
    $hauteur_destination = imagesy($destination);
     
    // On veut placer le logo en bas à* droite, on calcule les coordonnées où on doit placer le logo sur la photo
    $destination_x = $largeur_destination - $largeur_source;
    $destination_y =  $hauteur_destination - $hauteur_source;
     
    // On met le copyright (source) dans l'image de destination (la photo)
    imagecopymerge($destination, $source, $destination_x, $destination_y, 0, 0, $largeur_source, $hauteur_source, 60);
     
     
    /****************************************
    	4	: Affichage de l'image finale	*
    *****************************************/
     
    imagejpeg($destination);
    ?>
    Le truc c'est que j'ai seulement le copyright qui s'affiche et non l'image (alors qu'elle existe bien, je l'ai vérifiée manuellement). Pour utilisée cette page je ferais un "<img src="copyright.php?img=nom_de_mon_image" />" bref, je pense que ça vous l'aviez compris...

    Merci d'avance pour votre précieuse aide

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Par défaut
    J'ai réglé finalement le PB autrement, à savoir en écrivant directement le texte sur l'image...

    Voilà le code pour ceux que ça pourrait aider...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    <?php
    header ("Content-type: image/jpeg"); // L'image que l'on va créer est un jpeg
     
    $image = imagecreatefromjpeg($nom); // a remplacer par votre image (ATTENTION : PAS DE SOUS DOSSIER ! METTRE CE SCRIPT DANS LE DOSSIER IMAGE)
     
    $txt = "CC ".date("Y").", http://mayart.tk";
    $orange = imagecolorallocate($image, 255, 128, 0); // Le fond est orange (car c'est la première couleur)
    $bleu = imagecolorallocate($image, 0, 0, 255);
    $bleuclair = imagecolorallocate($image, 156, 227, 254);
    $noir = imagecolorallocate($image, 0, 0, 0);
    $blanc = imagecolorallocate($image, 255, 255, 255);
     
    $largeur = imagesx($image);
    $hauteur = imagesy($image);
     
    imagestring($image, 5, $largeur-230, $hauteur-20, $txt, $noir);
    imagecolortransparent($image, $orange); // On rend le fond orange transparent
     
    imagejpeg($image);
    ?>

    Voilà, merci quand même

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

Discussions similaires

  1. image impossible à afficher
    Par horkets dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 16/05/2007, 14h36
  2. [Images] Impossible de récupérer les dimensions
    Par shelko dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 20/02/2007, 16h06
  3. [Images] Impossible d'ouvrir format .jpg
    Par al1_24 dans le forum Imagerie
    Réponses: 1
    Dernier message: 29/11/2006, 16h26
  4. Réponses: 4
    Dernier message: 30/07/2006, 14h38

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