Funkcje extension() i is_img() to działające funkcje mojego autorstwa które zmazałem żeby było mniej kodu.
- extension() zwraca format pliku z '.' na początku
- is_img() zwraca true jeśli obrazek to jpg lub gif, a false w innych wypadkach.
Kod
<?
$img_name=isset($_REQUEST['$img_name'])?$_REQUEST['$img_name']:null;
function create_min($img_name,$max_x,$max_y)
{
if(!is_image ($img_name)) return FALSE;
//
switch ($ext=extension($img_name))
{
case '.jpg': $img_res=imagecreatefromjpeg($img_name); break;
case '.gif': $img_res=imagecreatefromgif($img_name); break;
}
$img_x=imagesx($img_res);
$img_y=(imagesy($img_res);
$x_do_y=($img_x / $img_y);
if($x_do_y >1)
{
$min_x=$max_x;
$min_y=$max_y / $x_do_y;
}
else
{
$min_x=$max_x * $x_do_y;
$min_y=$max_y;
}
$new_img_res=imagecreatetruecolor($min_x,$min_y);
imagecopyresampled($new_img_res, $img_res,0, 0, 0, 0, $min_x, $min_y, $img_x, $img_y);
switch ($ext=extension($img_name))
{
case '.jpg': header('Content-type: image/jpeg'); imagejpeg($new_img_res); break;
case '.gif': header('Content-type: image/gif'); imagegif($new_img_res); break;
}
}
create_min($img_name,100,100);
?>
$img_name=isset($_REQUEST['$img_name'])?$_REQUEST['$img_name']:null;
function create_min($img_name,$max_x,$max_y)
{
if(!is_image ($img_name)) return FALSE;
//
switch ($ext=extension($img_name))
{
case '.jpg': $img_res=imagecreatefromjpeg($img_name); break;
case '.gif': $img_res=imagecreatefromgif($img_name); break;
}
$img_x=imagesx($img_res);
$img_y=(imagesy($img_res);
$x_do_y=($img_x / $img_y);
if($x_do_y >1)
{
$min_x=$max_x;
$min_y=$max_y / $x_do_y;
}
else
{
$min_x=$max_x * $x_do_y;
$min_y=$max_y;
}
$new_img_res=imagecreatetruecolor($min_x,$min_y);
imagecopyresampled($new_img_res, $img_res,0, 0, 0, 0, $min_x, $min_y, $img_x, $img_y);
switch ($ext=extension($img_name))
{
case '.jpg': header('Content-type: image/jpeg'); imagejpeg($new_img_res); break;
case '.gif': header('Content-type: image/gif'); imagegif($new_img_res); break;
}
}
create_min($img_name,100,100);
?>