今天給大家介紹一下php怎樣生成縮略圖不失真。文章的內(nèi)容小編覺得不錯(cuò),現(xiàn)在給大家分享一下,覺得有需要的朋友可以了解一下,希望對(duì)大家有所幫助,下面跟著小編的思路一起來閱讀吧。
成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比瀘縣網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式瀘縣網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋瀘縣地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。
本文操作環(huán)境:Windows7系統(tǒng)、PHP7.1版、DELL G3電腦
php 怎么生成縮略圖不失真?
使用php函數(shù)等比例生成圖片縮略圖不失真的代碼
//等比例生成圖片縮略圖不失真 /** * 生成縮略圖 * $imgSrc 圖片源路徑 * $resize_width 圖片寬度 * $resize_height 圖片高度 * $dstimg 縮略圖路徑 * $isCut 是否剪切圖片 */ function reSizeImg($imgSrc, $resize_width, $resize_height, $dstimg, $isCut = false) { //圖片的類型 $type = substr(strrchr($imgSrc, "."), 1); //初始化圖象 if ($type == "jpg" || $type == "jpeg") { $im = imagecreatefromjpeg($imgSrc); } if ($type == "gif") { $im = imagecreatefromgif($imgSrc); } if ($type == "png") { $im = imagecreatefrompng($imgSrc); } $width = imagesx($im); $height = imagesy($im); //生成圖象 //改變后的圖象的比例 $resize_ratio = ($resize_width) / ($resize_height); //實(shí)際圖象的比例 $ratio = ($width) / ($height); if (($isCut) == 1) { if ($ratio >= $resize_ratio) { //高度優(yōu)先 $newimg = imagecreatetruecolor($resize_width, $resize_height); imagecopyresampled($newimg, $im, 0, 0, 0, 0, $resize_width, $resize_height, (($height) * $resize_ratio), $height); ImageJpeg($newimg, $dstimg); } if ($ratio < $resize_ratio) { //寬度優(yōu)先 $newimg = imagecreatetruecolor($resize_width, $resize_height); imagecopyresampled($newimg, $im, 0, 0, 0, 0, $resize_width, $resize_height, $width, (($width) / $resize_ratio)); ImageJpeg($newimg, $dstimg); } } else { if ($ratio >= $resize_ratio) { $newimg = imagecreatetruecolor($resize_width, ($resize_width) / $ratio); imagecopyresampled($newimg, $im, 0, 0, 0, 0, $resize_width, ($resize_width) / $ratio, $width, $height); ImageJpeg($newimg, $dstimg); } if ($ratio < $resize_ratio) { $newimg = imagecreatetruecolor(($resize_height) * $ratio, $resize_height); imagecopyresampled($newimg, $im, 0, 0, 0, 0, ($resize_height) * $ratio, $resize_height, $width, $height); ImageJpeg($newimg, $dstimg); } } ImageDestroy($im); } $result = reSizeImg('images/15M.jpg', 1280, 1280,'thumb/xiao15.jpg');
以上就是php怎樣生成縮略圖不失真的全部?jī)?nèi)容了,更多與php怎樣生成縮略圖不失真相關(guān)的內(nèi)容可以搜索創(chuàng)新互聯(lián)之前的文章或者瀏覽下面的文章進(jìn)行學(xué)習(xí)哈!相信小編會(huì)給大家增添更多知識(shí),希望大家能夠支持一下創(chuàng)新互聯(lián)!