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

Langage PHP Discussion :

Créer une image avec PHP


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2019
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2019
    Messages : 53
    Points : 76
    Points
    76
    Par défaut Créer une image avec PHP
    Bonsoir à toutes et tous

    En fouillant notre ami google, j'ai trouvé ce code pour créer une image avec PHP :

    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
     
    	<body>
     
    		<?php
     
    			header ("Content-type: image/jpeg"); // L'image que l'on va créer est un jpeg
     
    			// On charge d'abord les images
    			$source = imagecreatefrompng('logo.png'); // Le logo est la source
    			$destination = imagecreatefromjpeg('theatre.jpg'); // 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 logo (source) dans l'image de destination (la photo)
    			imagecopymerge($destination, $source, $destination_x, $destination_y, 0, 0, $largeur_source, $hauteur_source, 60);
     
    			// On affiche l'image de destination qui a été fusionnée avec le logo
    			imagejpeg($destination);
     
    		?>
     
    	</body>
    </html>
    J'ai nommé ce fichier "image.php".

    Je le lance, comme indiqué, avec ce fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
     
    <body>
     
    	<img src="image.php" />
     
    </body>
    </html>
    Je réussi à avoir une image noire avec au milieu un tout petit carré "clair" qui pourrait être une image !

    Il est précisé pour :
    - le fichier source : logo.png
    - l'image : theatre.jpg
    mais sans le chemin du fichier ???

    Pourriez-vous m'aider ? petite précision : je ne suis pas un fort en php.

    Cette question a peut-être été déjà posée, mais je n'arrive pas à faire une recherche sur le site

    Merci d'avance

    Eric

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 224
    Points
    8 224
    Billets dans le blog
    17
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
     
    	<body>
     
    		<?php
     
    			header ("Content-type: image/jpeg"); // L'image que l'on va créer est un jpeg
    Ce n'est pas bon, tu inities une page HTML et tu y insères du JPEG.
    Si un site propose cela je te recommande de le fuir.

    Retire tout le HTML, assure-toi de n'envoyer strictement aucun caractère au client, commence par quelque chose de simple, et ce sera bon.



    Pour le principe...

    index.html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p>Image générée en PHP : <img src="image.php"></p>
    image.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $image = imagecreatetruecolor(500, 500);
    imagefill($image, 0, 0, 0x0000FF); // Bleu
    header('Content-Type: image/jpeg');
    imagejpeg($image);
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2019
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2019
    Messages : 53
    Points : 76
    Points
    76
    Par défaut
    Bonsoir Seb

    Merci pour ta rapidité.

    Je regarde demain

    Bonne soirée

    Eric

  4. #4
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2019
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2019
    Messages : 53
    Points : 76
    Points
    76
    Par défaut
    Merci tout fonctionne.

    Eric

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/10/2008, 00h37
  2. [MySQL] Créer une base avec PHP
    Par loopback dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 21/01/2008, 11h06
  3. [Conception] Créer une table avec php
    Par freezerhm dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 29/10/2006, 12h15
  4. Afficher une image avec PHP
    Par a_zouggari dans le forum Langage
    Réponses: 2
    Dernier message: 22/04/2006, 18h02
  5. [Image]Créer une image avec JAVA 1.1
    Par burno dans le forum 2D
    Réponses: 4
    Dernier message: 11/08/2004, 09h19

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