recortar imagem com php

Baixe uma imagem e corte o redimensionamento com PHP.

if(substr(strtolower($img['name']),-4)==".png"){



move_uploaded_file
($img['tmp_name'],"blog/img/".$namepost.".png");

Img::creerMin("blog/img/".$namepost.".png","blog/thumb",$namepost.".png",$width,$height,$qualityimg);



}



else if(substr(strtolower($img['name']),-4)==".gif"){


move_uploaded_file
($img['tmp_name'],"blog/img/".$namepost.".gif");

Img::creerMin("blog/img/".$namepost.".gif","blog/thumb",$namepost.".gif",$width,$height,$qualityimg);



}



else if(substr(strtolower($img['name']),-4)==".jpg"){



move_uploaded_file
($img['tmp_name'],"blog/img/".$namepost.".jpg");

Img::creerMin("blog/img/".$namepost.".jpg","blog/thumb",$namepost.".jpg",$width,$height,$qualityimg);



}else{
$erreur
= true;
}

no script superior (requer (“imgClass.php”))

class Img{


static function creerMin($img,$chemin,$nom,$mlargeur=100,$mhauteur=100,$qualityimg){

// On supprime l'extension du nom
$nom
= substr($nom,0,-4);
// On récupère les dimensions de l'image
$dimension
=getimagesize($img);
// On cré une image à partir du fichier récup
if(substr(strtolower($img),-4)==".jpg"){$image = imagecreatefromjpeg($img); }
else if(substr(strtolower($img),-4)==".png"){$image = imagecreatefrompng($img); }
else if(substr(strtolower($img),-4)==".gif"){$image = imagecreatefromgif($img); }
// L'image ne peut etre redimensionne
else{echo 'none'; }
// Création des miniatures
// On cré une image vide de la largeur et hauteur voulue
$miniature
=imagecreatetruecolor ($mlargeur,$mhauteur);
// On va gérer la position et le redimensionnement de la grande image
if($dimension[0]>($mlargeur/$mhauteur)*$dimension[1] ){ $dimY=$mhauteur; $dimX=$mhauteur*$dimension[0]/$dimension[1]; $decalX=-($dimX-$mlargeur)/2; $decalY=0;}
if($dimension[0]<($mlargeur/$mhauteur)*$dimension[1]){ $dimX=$mlargeur; $dimY=$mlargeur*$dimension[1]/$dimension[0]; $decalY=-($dimY-$mhauteur)/2; $decalX=0;}
if($dimension[0]==($mlargeur/$mhauteur)*$dimension[1]){ $dimX=$mlargeur; $dimY=$mhauteur; $decalX=0; $decalY=0;}
// on modifie l'image crée en y plaçant la grande image redimensionné et décalée
imagecopyresampled
($miniature,$image,$decalX,$decalY,0,0,$dimX,$dimY,$dimension[0],$dimension[1]);
// On sauvegarde le tout dans le format d'origine pour utilisation lightbox par exemple
if(substr(strtolower($img),-4)==".png"){
imagejpeg
($miniature,$chemin."/".$nom.".png",$qualityimg);
}else if(substr(strtolower($img),-4)==".gif"){
imagejpeg
($miniature,$chemin."/".$nom.".gif");
}else if(substr(strtolower($img),-4)==".jpg"){
imagejpeg
($miniature,$chemin."/".$nom.".jpg",$qualityimg);
}
return true;
}
}

amar