function
resize_image(
$filename
,
$tmpname
,
$xmax
,
$ymax
)
02 | { |
03 |
$ext
= explode ( "." ,
$filename );
|
04 |
$ext
= $ext [ count ( $ext )-1];
|
05 |
06 |
if ( $ext
== "jpg"
|| $ext == "jpeg" )
|
07 |
$im
= imagecreatefromjpeg( $tmpname );
|
08 |
elseif ( $ext
== "png" )
|
09 |
$im
= imagecreatefrompng( $tmpname );
|
10 |
elseif ( $ext
== "gif" )
|
11 |
$im
= imagecreatefromgif( $tmpname );
|
12 |
13 |
$x
= imagesx( $im );
|
14 |
$y
= imagesy( $im );
|
15 |
16 |
if ( $x
<= $xmax
&& $y <= $ymax )
|
17 |
return
$im ;
|
18 |
19 |
if ( $x
>= $y ) {
|
20 |
$newx
= $xmax ;
|
21 |
$newy
= $newx
* $y / $x ;
|
22 |
}
|
23 |
else
{
|
24 |
$newy
= $ymax ;
|
25 |
$newx
= $x
/ $y * $newy ;
|
26 |
}
|
27 |
28 |
$im2
= imagecreatetruecolor( $newx ,
$newy );
|
29 |
imagecopyresized( $im2 ,
$im , 0, 0, 0, 0,
floor ( $newx ),
floor ( $newy ),
$x , $y );
|
30 |
return
$im2 ;
|
31 | } |