本文實例講述了PHP實現壓縮圖片尺寸并轉為jpg格式的方法。分享給大家供大家參考,具體如下:
<?php function ImageToJPG($srcFile,$dstFile,$towidth,$toheight) { $quality=80; $data = @GetImageSize($srcFile); switch ($data['2']) { case 1: $im = imagecreatefromgif($srcFile); break; case 2: $im = imagecreatefromjpeg($srcFile); break; case 3: $im = imagecreatefrompng($srcFile); break; case 6: $im = ImageCreateFromBMP( $srcFile ); break; } // $dstX=$srcW=@ImageSX($im); // $dstY=$srcH=@ImageSY($im); $srcW=@ImageSX($im); $srcH=@ImageSY($im); //$towidth,$toheight if($toheight/$srcW > $towidth/$srcH){ $b = $toheight/$srcH; }else{ $b = $towidth/$srcW; } //計算出圖片縮放后的寬高 // floor 舍去小數點部分,取整 $new_w = floor($srcW*$b); $new_h = floor($srcH*$b); $dstX=$new_w; $dstY=$new_h; $ni=@imageCreateTrueColor($dstX,$dstY); @ImageCopyResampled($ni,$im,0,0,0,0,$dstX,$dstY,$srcW,$srcH); @ImageJpeg($ni,$dstFile,$quality); @imagedestroy($im); @imagedestroy($ni); } //ImageToJPG('源文件名','目標文件名',目標寬,目標高); ImageToJPG('test2.png','test2.jpg',80,50);
希望本文所述對大家PHP程序設計有所幫助。