<?
/**
* Generating thumbnails
* $ SrcName ---- Original Image path
* $ NewWidth, $ newHeight ---- maximum width and height of the thumbnails respectively
* $ NewName ---- specifies the thumbnail file name (including path). The default value is to add thumbnail.
* @ Param string $ srcName
* @ Param int $ newWidth
* @ Param int $ newHeight
* @ Param string $ newName
* Return viod
*/
Function resizeImg ($ srcName, $ newWidth, $ newHeight, $ newName = "")
{
If ($ newName = "")
{
$ NameArr = explode ('.', $ srcName);
$ ExpName = array_pop ($ nameArr);
$ ExpName = 'thumbnail. '. $ expName;
Array_push ($ nameArr, $ expName);
$ NewName = implode ('.', $ nameArr);
}
$ Info = "";
$ Data = getimagesize ($ srcName, $ info);
Switch ($ data [2])
{
Case 1:
If (! Function_exists ("imagecreatefromgif")){
Echo "your GD library cannot use images in GIF format. Please use Jpeg or PNG format! Return";
Exit ();
}
$ Im = ImageCreateFromGIF ($ srcName);
Break;
Case 2:
If (! Function_exists ("imagecreatefromjpeg")){
Echo "your GD library cannot use images in jpeg format. Please use images in other formats! Return";
Exit ();
}
$ Im = ImageCreateFromJpeg ($ srcName);
Break;
Case 3:
$ Im = ImageCreateFromPNG ($ srcName);
Break;
}
$ SrcW = ImageSX ($ im);
$ SrcH = ImageSY ($ im);
$ NewWidthH = $ newWidth/$ newHeight;
$ SrcWH = $ srcW/$ srcH;
If ($ newWidthH <= $ srcWH){
$ FtoW = $ newWidth;
$ FtoH = $ ftoW * ($ srcH/$ srcW);
}
Else {
$ FtoH = $ newHeight;
$ FtoW = $ ftoH * ($ srcW/$ srcH);
}
If ($ srcW> $ newWidth | $ srcH> $ newHeight)
{
If (function_exists ("imagecreatetruecolor"))
{
@ $ Ni = ImageCreateTrueColor ($ ftoW, $ ftoH);
If ($ ni) ImageCopyResampled ($ ni, $ im, 0, 0, 0, $ ftoW, $ ftoH, $ srcW, $ srcH);
Else
{
$ Ni = ImageCreate ($ ftoW, $ ftoH);
ImageCopyResized ($ ni, $ im, 0, 0, 0, $ ftoW, $ ftoH, $ srcW, $ srcH);
}
}
Else
{
$ Ni = ImageCreate ($ ftoW, $ ftoH);
ImageCopyResized ($ ni, $ im, 0, 0, 0, $ ftoW, $ ftoH, $ srcW, $ srcH);
}
If (function_exists ('imagejpeg ') imagejpeg ($ ni, $ newName);
Else ImagePNG ($ ni, $ newName);
ImageDestroy ($ ni);
}
ImageDestroy ($ im);
}
ResizeImg ('2014. JPG ', 123);
?>