Vous êtes ici Codes PHP et MySQL > GD-Graphiques > Redimensionner image en gardant les proportion

 

Redimensionner image en gardant les proportion

Ce script vous permet de redimensionner une image à la taille voulu. En cas de trop grande taille elle est redimensionner sans déformation avec un fond de couleur, ou en cas de trop petite taille, elle garde sa taille d'origine avec un fond de couleur.
 
sitexw
Site de l'auteur voir
Code vu 2982 fois
Enregistré le 06 Juil 2010
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Redimensionner image en gardant les proportion
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
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.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Redimensionner image en gardant les proportion            */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts593-PHP.htm              */
/* Auteur         : sitexw                                                    */
/* Date édition   : 06 Juil 2010                                              */
/* Website auteur : www.sitexw.fr                                             */
/*                                                                            */
/******************************************************************************/


$chemin  "http://www.google.fr/logos/classicplus.png"// Adresse complete
$x_c     640// Taille de l'image
$y_c     480;
$qualite 80// Qualite de l'image (0=pourrit/100=super)
$color   "000000"// Couleur de fond

$size getimagesize($chemin);

if($size[0] >= $x_c AND $size[1] >= $y_c) {
    if(($size[0]/$x_c) > ($size[1]/$y_c)) {
        $x_t $x_c;
        $y_t floor(($size[1]*$x_c)/$size[0]);
        $x_p 0;
        $y_p = ($y_c/2)-($y_t/2);
    } else {
        $x_t floor(($size[0]*$y_c)/$size[1]);
        $y_t $y_c;
        $x_p = ($x_c/2)-($x_t/2);
        $y_p 0;
    }
} else {
    $x_t $size[0];
    $y_t $size[1];
    $x_p = ($x_c/2)-($x_t/2);
    $y_p = ($y_c/2)-($y_t/2);
}

$extension strrchr($chemin,'.');
$extension strtolower(substr($extension,1));

if($extension == 'jpg' OR $extension == 'jpeg') {
    $image_new imagecreatefromjpeg($chemin);
} elseif($extension == 'gif') {
    $image_new imagecreatefromgif($chemin);
} elseif($extension == 'png') {
    $image_new imagecreatefrompng($chemin);
} elseif($extension == 'bmp') {
    $image_new imagecreatefromwbmp($chemin);
} else {
    echo "Erreur !";
    exit;
}

Header("Content-type: image/jpeg");

$image imagecreatetruecolor($x_c$y_c);
$color imagecolorallocate($imagehexdec($color[0].$color[1]), hexdec($color[2
].$color[3]), hexdec($color[4].$color[5]));
imagefilledrectangle($image,0,0,$x_c,$y_c,$color);
imagecopyresampled($image,$image_new,$x_p,$y_p,0,0,$x_t,$y_t,$size[0],$size[1]);
imagejpeg($image,NULL,$qualite);

?>

 

Fonctions du code

: Retourne la taille d'une image - (PHP 4, PHP 5)
: Arrondit à l'entier inférieur - (PHP 4, PHP 5)
: Trouve la dernière occurrence d'un caractère dans une chaîne - (PHP 4, PHP 5)
: Renvoie une chaîne en minuscules - (PHP 4, PHP 5)
: Retourne un segment de chaîne - (PHP 4, PHP 5)
: Crée une nouvelle image à partir d'un fichier ou d'une URL - (PHP 4, PHP 5)
: Crée une nouvelle image à partir d'un fichier ou d'une URL - (PHP 4, PHP 5)
: Crée une nouvelle image à partir d'un fichier ou d'une URL - (PHP 4, PHP 5)
: Crée une nouvelle image à partir d'un fichier ou d'une URL - (PHP 4 >=...
: Affiche une chaîne de caractères - (PHP 4, PHP 5)
: Affiche un message et termine le script courant - (PHP 4, PHP 5)
: Envoie un en-tête HTTP - (PHP 4, PHP 5)
: Crée une nouvelle image en couleurs vraies - (PHP 4 >= 4.0.6, PHP 5)
: Convertit de hexadécimal en décimal - (PHP 4, PHP 5)
: Alloue une couleur pour une image - (PHP 4, PHP 5)
: Dessine un rectangle rempli - (PHP 4, PHP 5)
: Copie, redimensionne, rééchantillonne une image - (PHP 4 >= 4.0.6, PHP 5)
: Envoie une image JPEG vers un navigateur ou un fichier - (PHP 4, PHP 5)
Commentaires
Bonjour
ce script  fonctionne-t-il chez free non?
merci d'avance !
 
 Merci pour ce script du tonnerre!
 
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

GD-Graphiques

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
    Editeur PHP
 
        Publicité