Créer un compte
Connexion

resize image

Pour créer et répondre aux sujets, vous devez être connecté.
Pages: 1
Auteur Message
jacque99
20/09/2010 à 18:19:36
jacque99
Membre
Voici en pièce jointe , un code source qui marche bien pour redimensionné une image proportionnellement.J'espère faire des modifications pour juste prendre une morceau quelconque d'une image en 95*95. Merci


index.php




Le nom de l'image redimensionner avec 95 ,95




upload.php

<?php


$nomImage=$_POST['video'];

if( isset($_POST['upload']) ) // si formulaire soumis
{
$content_dir = 'upload'; // dossier où sera déplacé le fichier

$tmp_file = $_FILES['fichier']['tmp_name'];

if( !is_uploaded_file($tmp_file) )
{
exit("Le fichier est introuvable");
}

// on vérifie maintenant l'extension
$type_file = $_FILES['fichier']['type'];

if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'png') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') )
{
exit("Le fichier n'est pas une image");
}

// on copie le fichier dans le dossier de destination

$ext = substr($_FILES['fichier']['name'], strrpos($_FILES['fichier']['name'], '.'));

$name_file = $nomImage.$ext;
echo $name_file;


//fonction pour changer les dimentions des fichiers
function redimensionner($file, $maxwidth, $maxheight) {
/*
$maxwidth = 171;
$maxheight = 171;
*/
list($rawwidth, $rawheight, $type) = @getimagesize($file);

if ($maxwidth < $rawwidth && $rawwidth >= $rawheight) {

$width = $maxwidth;

$height = ($width / $rawwidth) * $rawheight;

}

elseif ($maxheight < $rawheight && $rawheight >= $rawwidth) {

$height = $maxheight;

$width = ($height /$rawheight) * $rawwidth;

}

else {

$height = $rawheight;

$width = $rawwidth;

}

$imgbuffer = imagecreatetruecolor($width, $height);

switch($type) {

case 1: $image = imagecreatefromgif($file); break;

case 2: $image = imagecreatefromjpeg($file); break;

case 3: $image = imagecreatefrompng($file); break;

case 4: $image = imagecreatefrombmp($file); break;

default: exit("Tried to create thumbnail from $file: not a valid image");

}

if (!$image) exit("Image creation from $file failed for an unknown reason. Probably not a valid image.");

else {

imagecopyresampled($imgbuffer, $image, 0, 0, 0, 0, $width, $height, $rawwidth, $rawheight);

imageinterlace($imgbuffer);

switch($type) {




case 1: $image = imagegif($imgbuffer, $file, 80); break;

case 2: $image = imagejpeg($imgbuffer, $file, 80); break;

case 3: $image = imagepng($imgbuffer, $file, 7); break;



}

}

}


if( preg_match('#[\x00-\x1F\x7F-\x9F/\\\\]#', $name_file) )

{

exit("Nom de fichier non valide");

}

else if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )

{

exit("Impossible de copier le fichier dans $content_dir");

}

redimensionner($content_dir.$name_file,95, 95);

}
?>


Pages: 1