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] upload d'image et dimension


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut [GD] upload d'image et dimension
    Bonjour,

    j'ai le script suivant qui permet de uploader des fichier et de c réer des miniatures

    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
     
    		if (move_uploaded_file($_FILES['up_photo']['tmp_name'], $dest_dossier . $dest_fichier)) // à ce moment on met le fichier sur le serveur
    			{
     
    				// Creation de l'image miniature 
     
    				 // si notre image est de type jpeg 
    				if ($tableau[2] == 2) 
    				{ 
    					// on crée une image à partir de notre grande image à l'aide de la librairie GD 
    					$src = imagecreatefromjpeg($dest_dossier.'/'.$dest_fichier); 
    					// on teste si notre image est de type paysage ou portrait 
    					if ($tableau[0] > $tableau[1]) 
    					{ 
    						$im = imagecreatetruecolor(round(($ratio/$tableau[1])*$tableau[0]), $ratio); 
    						imagecopyresampled($im, $src, 0, 0, 0, 0, round(($ratio/$tableau[1])*$tableau[0]), $ratio, $tableau[0], $tableau[1]); 
    					} 
    					else 
    					{ 
    						$im = imagecreatetruecolor($ratio, round(($ratio/$tableau[0])*$tableau[1])); 
    						imagecopyresampled($im, $src, 0, 0, 0, 0, $ratio, round($tableau[1]*($ratio/$tableau[0])), $tableau[0], $tableau[1]); 
    					} 
    					// on copie notre fichier généré dans le répertoire des miniatures 
    					imagejpeg ($im, $dest_dossier_mini.'/'.$dest_fichier); 
    				} 
     
    				if ($tableau[2] == 3) 
    				{ 
    					$src = imagecreatefrompng($dir.'/'.$file_upload); 
    					if ($tableau[0] > $tableau[1]) 
    					{ 
    						$im = imagecreatetruecolor(round(($ratio/$tableau[1])*$tableau[0]), $ratio); 
    						imagecopyresampled($im, $src, 0, 0, 0, 0, round(($ratio/$tableau[1])*$tableau[0]), $ratio, $tableau[0], $tableau[1]); 
    					} 
    					else 
    					{ 
    						$im = imagecreatetruecolor($ratio, round(($ratio/$tableau[0])*$tableau[1])); 
    						imagecopyresampled($im, $src, 0, 0, 0, 0, $ratio, round($tableau[1]*($ratio/$tableau[0])), $tableau[0], $tableau[1]); 
    					} 
    					imagepng ($im, $dir_mini.'/'.$file_upload); 
    				}
    J'aimerais fixer à l'image une largeur maximale et une hauteur maximale.

    Au fait j'aimerais que l'image ne fasse pas plus de 150 pixel de large et 200 pixels de hauteur...

  2. #2
    Membre confirmé Avatar de speedy_g
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 213
    Par défaut
    Je verrais un truc du style :

    1. ratio1 = y/x
    2. ratio2 = yref/xref = 200/150

    Si ratio2 > ratio1 => $new_width = xref, $new_height = ratio1*xref
    Si ratio1 > ratio2 = > $new_height = yref, $new_width = yref/ratio1

    avec la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

  3. #3
    Membre éprouvé
    Inscrit en
    Mars 2004
    Messages
    1 931
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 931
    Par défaut
    Salut,

    je vais peut-être abuser mais l'intégrer facilement dans mon code ?

Discussions similaires

  1. Uploader une image à partir d'un formulaire ?
    Par netwebzone dans le forum Langage
    Réponses: 2
    Dernier message: 28/11/2005, 09h27
  2. [Upload] Upload d'image....
    Par tochbee dans le forum Langage
    Réponses: 3
    Dernier message: 21/11/2005, 11h44
  3. [Debutant] [JSP/Servlet] Upload d'image vers le serveur
    Par ShinJava dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 05/07/2005, 17h42
  4. Upload d'images sur le forum
    Par KibitO dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 2
    Dernier message: 09/10/2004, 23h18
  5. Réponses: 2
    Dernier message: 03/09/2004, 17h35

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