欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP生成縮略圖實(shí)例講解

 更新時(shí)間:2021年03月05日 16:44:55   作者:祝君圓夢(mèng)  
這篇文章主要介紹了PHP生成縮略圖實(shí)例講解,文章列舉了實(shí)例代碼,有正好需要的同學(xué)可以借鑒下

封裝的方法函數(shù):

<?php
	/**
  * 生成縮略圖
  * $imgSrc     圖片源路徑
  * $thumbWidth   縮略圖寬度
  * $thumbHeight  縮略圖高度
  * $thumbSrc    縮略圖路徑
  * $isCut     是否剪切圖片
  */
  function createThumbImg($imgSrc, $thumbWidth, $thumbHeight, $thumbSrc, $isCut = false) {
    //1.獲取圖片的類型
    $type = substr(strrchr($imgSrc, "."), 1);
    //2.初始化圖象
    if ($type == "jpg" || $type == "jpeg") {
			//創(chuàng)建一塊畫(huà)布,并從JPEG文件或URL地址載入一副圖像
      $sourceImg = imagecreatefromjpeg($imgSrc);
    }elseif ($type == "gif") {
			//創(chuàng)建一塊畫(huà)布,并從GIF文件或URL地址載入一副圖像
      $sourceImg = imagecreatefromgif($imgSrc);
    }elseif ($type == "png") {
			//創(chuàng)建一塊畫(huà)布,并從PNG文件或URL地址載入一副圖像
      $sourceImg = imagecreatefrompng($imgSrc);
    }
		elseif ($type == "wbmp") {
			//創(chuàng)建一塊畫(huà)布,并從WBMP文件或URL地址載入一副圖像
      $sourceImg = imagecreatefromwbmp($imgSrc);
    }
		//取得圖像寬度
    $width = imagesx($sourceImg);
		//取得圖像高度
    $height = imagesy($sourceImg);
 
    //3.生成圖象
    //縮略圖的圖象比例
    $scale = ($thumbWidth) / ($thumbHeight);
    //源圖片的圖象比例
    $ratio = ($width) / ($height);
    if (($isCut) == 1) {
			//高度優(yōu)先
      if ($ratio >= $scale) {        
				//創(chuàng)建真彩圖像資源(imagecreatetruecolor()函數(shù)使用GDLibrary創(chuàng)建新的真彩色圖像)
        $newimg = imagecreatetruecolor($thumbWidth, $thumbHeight);
				//圖像處理
        imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, $thumbWidth, $thumbHeight, (($height) * $scale), $height);
        //以JPEG格式將圖像輸出到瀏覽器或文件
				ImageJpeg($newimg, $thumbSrc);
      }
			 //寬度優(yōu)先
      if ($ratio < $scale) {       
        $newimg = imagecreatetruecolor($thumbWidth, $thumbHeight);
        imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $width, (($width) / $scale));
        ImageJpeg($newimg, $thumbSrc);
      }
    } else {
      if ($ratio >= $scale) {
        $newimg = imagecreatetruecolor($thumbWidth, ($thumbWidth) / $ratio);
        imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, $thumbWidth, ($thumbWidth) / $ratio, $width, $height);
        ImageJpeg($newimg, $thumbSrc);
      }
      if ($ratio < $scale) {
        $newimg = imagecreatetruecolor(($thumbHeight) * $ratio, $thumbHeight);
        imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, ($thumbHeight) * $ratio, $thumbHeight, $width, $height);
        ImageJpeg($newimg, $thumbSrc);
      }
    }
		//銷毀圖像
    ImageDestroy($sourceImg);
  }
?>

調(diào)用示例:

<?php
	//圖片源路徑
	$imgSrc="D:/PHP/test/demo.jpg";
	//縮略圖路徑
	$thumbSrc="D:/PHP/test/thumb.jpg";
	createThumbImg($path,100,100,$thumbSrc);
?>

到此這篇關(guān)于PHP生成縮略圖實(shí)例講解的文章就介紹到這了,更多相關(guān)PHP生成縮略圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Laravel框架生命周期與原理分析

    Laravel框架生命周期與原理分析

    這篇文章主要介紹了Laravel框架生命周期與原理,結(jié)合實(shí)例形式總結(jié)分析了Laravel框架針對(duì)用戶請(qǐng)求響應(yīng)的完整運(yùn)行周期、流程、原理,需要的朋友可以參考下
    2018-06-06
  • 利用Fix Rss Feeds插件修復(fù)WordPress的Feed顯示錯(cuò)誤

    利用Fix Rss Feeds插件修復(fù)WordPress的Feed顯示錯(cuò)誤

    這篇文章主要介紹了利用Fix Rss Feeds插件修復(fù)WordPress的Feed顯示錯(cuò)誤的方法,需要的朋友可以參考下
    2015-12-12
  • 分享5個(gè)非常有用的Laravel Blade指令

    分享5個(gè)非常有用的Laravel Blade指令

    這篇文章主要給大家分享介紹了5個(gè)非常有用的Laravel Blade指令,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-05-05
  • Laravel如何使用數(shù)據(jù)庫(kù)事務(wù)及捕獲事務(wù)失敗后的異常詳解

    Laravel如何使用數(shù)據(jù)庫(kù)事務(wù)及捕獲事務(wù)失敗后的異常詳解

    最近在學(xué)習(xí)Laravel,在學(xué)習(xí)中遇到了不少的問(wèn)題,所以想著總結(jié)記錄下來(lái),所以下面這篇文章主要給大家介紹了關(guān)于Laravel如何使用數(shù)據(jù)庫(kù)事務(wù)及捕獲事務(wù)失敗后異常的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-10-10
  • laravel + vue實(shí)現(xiàn)的數(shù)據(jù)統(tǒng)計(jì)繪圖(今天、7天、30天數(shù)據(jù))

    laravel + vue實(shí)現(xiàn)的數(shù)據(jù)統(tǒng)計(jì)繪圖(今天、7天、30天數(shù)據(jù))

    這篇文章主要給大家介紹了關(guān)于利用laravel + vue如何實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì)繪圖(今天、7天、30天數(shù)據(jù))的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,需要的朋友們下面隨著小編來(lái)一起看看吧
    2018-07-07
  • php對(duì)數(shù)組排序代碼分享

    php對(duì)數(shù)組排序代碼分享

    這篇文章主要介紹了php對(duì)數(shù)組排序代碼,需要的朋友可以參考下
    2014-02-02
  • thinkphp連貫操作實(shí)例分析

    thinkphp連貫操作實(shí)例分析

    這篇文章主要介紹了thinkphp連貫操作,以實(shí)例形式較為詳細(xì)的分析了連貫操作的具體用法及常用的方法含義,是非常實(shí)用的技巧,需要的朋友可以參考下
    2014-11-11
  • php 類自動(dòng)載入的方法

    php 類自動(dòng)載入的方法

    在PHP5之前,各個(gè)PHP框架如果要實(shí)現(xiàn)類的自動(dòng)加載,一般都是按照某種約定自己實(shí)現(xiàn)一個(gè)遍歷目錄,自動(dòng)加載所有符合約定規(guī)則的文件的類或函數(shù)。 當(dāng)然,PHP5之前對(duì)面向?qū)ο蟮闹С植⒉皇翘茫惖氖褂靡矝](méi)有現(xiàn)在頻繁。 我們來(lái)詳細(xì)探討下吧。
    2015-06-06
  • ThinkPHP結(jié)合AjaxFileUploader實(shí)現(xiàn)無(wú)刷新文件上傳的方法

    ThinkPHP結(jié)合AjaxFileUploader實(shí)現(xiàn)無(wú)刷新文件上傳的方法

    這篇文章主要介紹了ThinkPHP結(jié)合AjaxFileUploader實(shí)現(xiàn)無(wú)刷新文件上傳的方法,是ThinkPHP文件上傳中一個(gè)比較典型的應(yīng)用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-10-10
  • Laravel執(zhí)行migrate命令提示:No such file or directory的解決方法

    Laravel執(zhí)行migrate命令提示:No such file or directory的解決方法

    這篇文章主要介紹了Laravel執(zhí)行migrate命令提示:No such file or directory的解決方法,分析了執(zhí)行migrate命令出現(xiàn)錯(cuò)誤的原因與相關(guān)的解決方法,需要的朋友可以參考下
    2016-03-03

最新評(píng)論