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 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 77 78 79 80 81 82
|
if (!empty($_FILES))
{
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
$targetFile = str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];
move_uploaded_file($tempFile,$targetFile);
// ###################################################################
// ###################################################################
// --- UberUploadCropper ---
// you need to do any initial resizing, scaling etc. here
// ###################################################################
// ###################################################################
$largeur = 500;
$hauteur = 500;
$srcInfo = getimagesize($targetFile);
$srcWidth = $srcInfo[0];
$srcHeight = $srcInfo[1];
if($largeur <= $srcWidth && $hauteur <= $srcHeight)
{
/* */
$largeur = $srcWidth;
$hauteur = $srcHeight;
/* */
switch ($srcInfo[2])
{
case IMAGETYPE_JPEG:
case IMAGETYPE_JPEG2000:
$img_in = imagecreatefromjpeg($targetFile);
break;
case IMAGETYPE_PNG:
$img_in = imagecreatefrompng($targetFile);
break;
case IMAGETYPE_GIF:
$img_in = imagecreatefromgif($targetFile);
break;
}
$img_out = imagecreatetruecolor($largeur, $hauteur);
// Solution pour le probleme du fond noir sur les images PGN
if($srcInfo[2] === IMAGETYPE_PNG || $srcInfo[2] === IMAGETYPE_GIF)
{
/*On active l'alpha*/
imagealphablending($img_out, false);
imagesavealpha($img_out,true);
/*On remplit la miniature avec un blanc opaque*/
imagefill($img_out,0,0,imagecolorallocatealpha($img_out, 255, 255, 255, 127));
}
imagecopyresampled($img_out, $img_in, 0, 0, 0, 0, imagesx($img_out), imagesy($img_out), imagesx($img_in), imagesy($img_in));
if($srcInfo[2]===IMAGETYPE_PNG)
{
imagepng($img_out,$targetFile);
}
else
{
imagejpeg($img_out,$targetFile);
}
echo "3";
}
else
{
ERROR
}
} |
Partager