国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP實例 圖片等比例縮放功能

2020-03-22 20:08:27
字體:
來源:轉載
供稿:網友
  • 在網站開發的過程中,經常要對一些圖片進行一些處理,比如說縮放,裁剪,加水印等等。當然這些功能不僅僅可以用在開發網站的過程中,平時需要對圖片做一些處理的時候,把這個功能封裝到函數中去,要處理圖片的時候,根據自己的要求在函數中添加需要的參數不就搞定了么。雖說這個對于小白來說可能一下子上來就點困難,但是一回生二回熟嘛。好了,進入正題。今天分享一個圖像等比例縮放的函數。需要中的同學可以稍作修改,然后自己拿去用,就省的自己寫了(大神請無視).

    1.首先,了解一下圖片縮放中多需要的函數

    有不太明白的可以用php開發手冊去檢索一下,上面講的都是非常明白,是學習時一個非常好的工具,無論是新手還是老鳥。

    2.分享一下代碼,注釋寫的很明白了(自我感覺良好,不足之處望大家指正)

    <?phpfunction ImageShrink($imgfile,$minx,$miny){	//獲取大圖信息	$imgarr=getimagesize($imgfile);	$maxx=$imgarr[0];//寬	$maxy=$imgarr[1];//長	$maxt=$imgarr[2];//格式	$maxm=$imgarr['mime'];//mime類型	//大圖資源	$maxim=imagecreatefromjpeg($imgfile);	//縮放判斷	if(($minx/$maxx)>($miny/$maxy)){		$scale=$miny/$maxy;	}else{		$scale=$minx/$maxx;		}	//對所求值進行取整	$minx=floor($maxx*$scale);	$miny=floor($maxy*$scale);		//添加小圖	$minim=imagecreatetruecolor($minx,$miny);	//縮放函數	imagecopyresampled($minim,$maxim,0,0,0,0,$minx,$miny,$maxx,$maxy);	//小圖輸出	header("content-type:{$maxm}");	//判斷圖片類型	switch($maxt){		case 1:			$imgout="imagegif";			break;		case 2:			$imgout="imagejpeg";			break;		case 3:			$imgout="imagepng";			break;	}	//變量函數	$imgout($minim,'copypic.jpg');			//釋放資源	imagedestroy($maxim);	imagedestroy($minim);}ImageShrink("picture/apple.jpg",50,50);?>


    3.整段代碼中有幾個不太容易理解的地方,稍作解釋

    (1)getimagesize()這個函數的返回值是一個數組,數組中包含這個圖片尺寸,格式等信息。根據鍵值對可以獲取其中的值,賦給變量,然后在后面需要用的地方直接傳入變量。關于函數,詳解請看手冊。

    (2)進行正比例縮放時,我們需要考慮縮放的比例,拿小圖的長寬和大圖的長寬做比較,選擇比例小的作為縮放比例。這里不是特別好理解,大家可以親自試試。

    (3)大圖縮放之后,小圖的格式沒有發生變化,所以在后面需要函數輸出圖像的時候,判斷圖像格式,這里就需要使用變量函數。將函數賦給一個變量,這招用到的時候感覺還是蠻叼的。

    (4)保存的圖片格式可以自己設置,保存路徑與原圖片同一路徑。其他參數看個人需求了。

    PHP編程

    鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 江口县| 通渭县| 衡水市| 林周县| 焦作市| 双辽市| 龙江县| 逊克县| 澎湖县| 天津市| 新竹市| 公主岭市| 寿光市| 依兰县| 嘉荫县| 双柏县| 博爱县| 田林县| 荔波县| 于田县| 平武县| 清远市| 连山| 阜宁县| 江阴市| 开阳县| 东台市| 北海市| 汽车| 尤溪县| 高要市| 洛川县| 建阳市| 潜山县| 诸暨市| 邳州市| 历史| 宁化县| 安化县| 衡水市| 祁东县|