filename = 'img/test.jpg';
$all_type
=
array
(
"jpg"
=>
array
(
"create"
=>
"ImageCreateFromjpeg"
,
"output"
=>
"imagejpeg"
,
"exn"
=>
".jpg"
),
"gif"
=>
array
(
"create"
=>
"ImageCreateFromGIF"
,
"output"
=>
"imagegif"
,
"exn"
=>
".gif"
),
"jpeg"
=>
array
(
"create"
=>
"ImageCreateFromjpeg"
,
"output"
=>
"imagejpeg"
,
"exn"
=>
".jpg"
),
"png"
=>
array
(
"create"
=>
"imagecreatefrompng"
,
"output"
=>
"imagepng"
,
"exn"
=>
".png"
),
"wbmp"
=>
array
(
"create"
=>
"imagecreatefromwbmp"
,
"output"
=>
"image2wbmp"
,
"exn"
=>
".wbmp"
)
);
$imgtype
=
getimagesize
(
$filename
);
$width
=
$imgtype
[0];
$height
=
$imgtype
[1];
$type
=
str_replace
('image/','',
$imgtype
['mime']);
$func_create
=
$all_type
[
$type
]['create'];
$func_output
=
$all_type
[
$type
]['output'];
$x
=
$y
=0;
if
((
$width
* 100)>(
$height
* 120))
{
$newwidth
=
ceil
(
$height
* 120/100);
$newheight
=
$height
;
$x
= (
$width
-
$newwidth
)/2;
}
elseif
((
$width
* 100)<(
$height
* 120))
{
$newheight
=
ceil
(
$width
* 100/120);
$newwidth
=
$width
;
$y
= (
$height
-
$newheight
)/2;
}
else
{
$newheight
=
$height
;
$newwidth
=
$width
;
}
$thumb
= imagecreatetruecolor(
$newwidth
,
$newheight
);
$source
=
$func_create
(
$filename
);
imagecopyresized(
$thumb
,
$source
, 0, 0, 0, 0,
$newwidth
,
$newheight
,
$newwidth
,
$newheight
);
$func_output
(
$thumb
,'a.jpeg');