麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > PHP > 正文

PHP自定義圖片縮放函數(shù)實現(xiàn)等比例不失真縮放的

2020-03-22 20:27:23
字體:
供稿:網(wǎng)友
本文實例講述了PHP自定義圖片縮放函數(shù)實現(xiàn)等比例不失真縮放的方法。分享給大家供大家參考,具體如下:function resizeImage($im,$maxwidth,$maxheight,$name,$filetype) $pic_width = imagesx($im); $pic_height = imagesy($im); if(($maxwidth && $pic_width $maxwidth) || ($maxheight && $pic_height $maxheight)) if($maxwidth && $pic_width $maxwidth) $widthratio = $maxwidth/$pic_width; $resizewidth_tag = true; if($maxheight && $pic_height $maxheight) $heightratio = $maxheight/$pic_height; $resizeheight_tag = true; if($resizewidth_tag && $resizeheight_tag) if($widthratio $heightratio) $ratio = $widthratio; else $ratio = $heightratio; if($resizewidth_tag && !$resizeheight_tag) $ratio = $widthratio; if($resizeheight_tag && !$resizewidth_tag) $ratio = $heightratio; $newwidth = $pic_width * $ratio; $newheight = $pic_height * $ratio; if(function_exists("imagecopyresampled")) $newim = imagecreatetruecolor($newwidth,$newheight); imagecopyresampled($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height); else $newim = imagecreate($newwidth,$newheight); imagecopyresized($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height); $name = $name.$filetype; imagejpeg($newim,$name); imagedestroy($newim); else $name = $name.$filetype; imagejpeg($im,$name);參數(shù)說明:$im 圖片對象,應(yīng)用函數(shù)之前,你需要用imagecreatefromjpeg()讀取圖片對象,如果PHP環(huán)境支持PNG,GIF,也可使用imagecreatefromgif(),imagecreatefrompng();$maxwidth 定義生成圖片的最大寬度(單位:像素)$maxheight 生成圖片的最大高度(單位:像素)$name 生成的圖片名$filetype 最終生成的圖片類型(.jpg/.png/.gif)代碼注釋:第3~4行:讀取需要縮放的圖片實際寬高第8~26行:通過計算實際圖片寬高與需要生成圖片的寬高的壓縮比例最終得出進行圖片縮放是根據(jù)寬度還是高度進行縮放,當(dāng)前程序是根據(jù)寬度進行圖片縮放。如果你想根據(jù)高度進行圖片縮放,你可以將第22行的語句改成$widthratio $heightratio第28~31行:如果實際圖片的長度或者寬度小于規(guī)定生成圖片的長度或者寬度,則要么根據(jù)長度進行圖片縮放,要么根據(jù)寬度進行圖片縮放。第33~34行:計算最終縮放生成的圖片長寬。第36~45行:根據(jù)計算出的最終生成圖片的長寬改變圖片大小,有兩種改變圖片大小的方法:ImageCopyResized()函數(shù)在所有GD版本中有效,但其縮放圖像的算法比較粗糙。ImageCopyResamples(),其像素插值算法得到的圖像邊緣比較平滑,但該函數(shù)的速度比ImageCopyResized()慢。第47~49行:最終生成經(jīng)過處理后的圖片,如果你需要生成GIF或PNG,你需要將imagejpeg()函數(shù)改成imagegif()或imagepng()第51~56行:如果實際圖片的長寬小于規(guī)定生成的圖片長寬,則保持圖片原樣,同理,如果你需要生成GIF或PNG,你需要將imagejpeg()函數(shù)改成imagegif()或imagepng()。特別說明:GD庫1.6.2版以前支持GIF格式,但因GIF格式使用LZW演算法牽涉專利權(quán),因此在GD1.6.2版之后不支持GIF的格式。如果你是WINDOWS的環(huán)境,你只要進入PHP.INI文件找到extension=php_gd2.dll,將#去除,重啟APACHE即可,如果你是Linux環(huán)境,又想支持GIF,PNG,JPEG,你需要去下載libpng,zlib,以及freetype字體并安裝。更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP圖形與圖片操作技巧匯總》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)學(xué)運算技巧總結(jié)》、《php日期與時間用法總結(jié)》、《phphtml' target='_blank'>面向?qū)ο?/u>程序設(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》希望本文所述對大家PHP程序設(shè)計有所幫助。PHP教程

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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 羞羞答答视频 | 日本成人高清视频 | 美女网站黄在线观看 | 国产午夜精品一区二区三区在线观看 | 粉嫩蜜桃麻豆免费大片 | 日本高清一级片 | 深夜福利久久久 | 亚洲成人中文字幕在线 | 成人在线视频国产 | 97人人草| 毛片免费观看完整版 | 成人免费视频视频在线观看 免费 | 欧美18一12sex性处hd | 亚洲精品一区中文字幕 | 久久91亚洲人成电影网站 | 中文字幕国 | 中文字幕亚洲视频 | 中文字幕 亚洲一区 | 精品久久久91 | 免费一级欧美 | a级毛片免费观看在线播放 日本aaa一级片 | 久久国产亚洲视频 | 日韩午夜片 | 亚洲欧美日韩一区二区三区在线观看 | 91性高湖久久久久久久久网站 | 精品一区二区久久久久久按摩 | 亚洲四播房 | 一区二区三区视频在线观看 | 新久草在线视频 | 一夜新娘第三季免费观看 | 欧美日韩综合视频 | 国产精品免费久久久久久 | 精品一区二区三区在线观看视频 | 51色视频 | 黄色片免费在线 | 国产亚洲小视频 | 黄视频网址 | 亚洲成人黄色片 | 中文字幕免费看 | 狠狠干夜夜草 | 九九精品视频观看 |