PHP實現(xiàn)將上傳圖片自動縮放到指定分辨率,并保持清晰度封裝類示例
本文實例講述了PHP實現(xiàn)將上傳圖片自動縮放到指定分辨率,并保持清晰度封裝類。分享給大家供大家參考,具體如下:
class AutoImage{
private $image;
public function resize($src, $width, $height){
//$src 就是 $_FILES['upload_image_file']['tmp_name']
//$width和$height是指定的分辨率
//如果想按指定比例放縮,可以將$width和$height改為$src的指定比例
$this->image = $src;
$info = getimagesize($src);//獲取圖片的真實寬、高、類型
if($info[0] == $width && $info[1] == $height){
//如果分辨率一樣,直接返回原圖
return $src;
}
switch ($info['mime']){
case 'image/jpeg':
header('Content-Type:image/jpeg');
$image_wp = imagecreatetruecolor($width, $height);
$image_src = imagecreatefromjpeg($src);
imagecopyresampled($image_wp, $image_src, 0, 0, 0, 0, $width, $height, $info[0], $info[1]);
imagedestroy($image_src);
imagejpeg($image_wp,$this->image);
break;
case 'image/png':
header('Content-Type:image/png');
$image_wp = imagecreatetruecolor($width, $height);
$image_src = imagecreatefrompng($src);
imagecopyresampled($image_wp, $image_src, 0, 0, 0, 0, $width, $height, $info[0], $info[1]);
imagedestroy($image_src);
imagejpeg($image_wp,$this->image);
break;
case 'image/gif':
header('Content-Type:image/gif');
$image_wp = imagecreatetruecolor($width, $height);
$image_src = imagecreatefromgif($src);
imagecopyresampled($image_wp, $image_src, 0, 0, 0, 0, $width, $height, $info[0], $info[1]);
imagedestroy($image_src);
imagejpeg($image_wp,$this->image);
break;
}
return $this->image;
}
}
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP圖形與圖片操作技巧匯總》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》、《PHP數(shù)學(xué)運算技巧總結(jié)》、《php字符串(string)用法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
相關(guān)文章
php使用sql server驗證連接數(shù)據(jù)庫的方法
這篇文章主要介紹了php使用sql server驗證連接數(shù)據(jù)庫的方法,以實例形式分析了php采用基于SQL Server驗證進行數(shù)據(jù)庫連接的原理及技巧,并總結(jié)了相關(guān)注意事項,需要的朋友可以參考下2014-12-12
Drupal 添加模塊出現(xiàn)莫名其妙的錯誤的解決方法(往往出現(xiàn)在模塊較多時)
今天用學(xué)習(xí)用Drupal,在同時安裝ctools,CCK,views,panels時出現(xiàn)了奇怪的狀況。2011-04-04
php strrpos()與strripos()函數(shù)
以下是對php中的strrpos函數(shù)與strripos函數(shù)的用法進行了詳細的介紹,需要的朋友可以過來參考下2013-08-08
PHP中功能強大卻很少使用的函數(shù)實例小結(jié)
這篇文章主要介紹了PHP中功能強大卻很少使用的函數(shù),結(jié)合實例形式總結(jié)分析了php中非常實用的幾個函數(shù),包括函數(shù)的調(diào)用、注冊、調(diào)用、判斷等操作技巧,需要的朋友可以參考下2016-11-11

