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

PHP生成縮略圖實例講解

 更新時間:2021年03月05日 16:44:55   作者:祝君圓夢  
這篇文章主要介紹了PHP生成縮略圖實例講解,文章列舉了實例代碼,有正好需要的同學(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)建一塊畫布,并從JPEG文件或URL地址載入一副圖像
      $sourceImg = imagecreatefromjpeg($imgSrc);
    }elseif ($type == "gif") {
			//創(chuàng)建一塊畫布,并從GIF文件或URL地址載入一副圖像
      $sourceImg = imagecreatefromgif($imgSrc);
    }elseif ($type == "png") {
			//創(chuàng)建一塊畫布,并從PNG文件或URL地址載入一副圖像
      $sourceImg = imagecreatefrompng($imgSrc);
    }
		elseif ($type == "wbmp") {
			//創(chuàng)建一塊畫布,并從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生成縮略圖實例講解的文章就介紹到這了,更多相關(guān)PHP生成縮略圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

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

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

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

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

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

    分享5個非常有用的Laravel Blade指令

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

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

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

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

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

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

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

    thinkphp連貫操作實例分析

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

    php 類自動載入的方法

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

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

    這篇文章主要介紹了ThinkPHP結(jié)合AjaxFileUploader實現(xiàn)無刷新文件上傳的方法,是ThinkPHP文件上傳中一個比較典型的應(yīng)用技巧,非常具有實用價值,需要的朋友可以參考下
    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)錯誤的原因與相關(guān)的解決方法,需要的朋友可以參考下
    2016-03-03

最新評論