亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php怎樣生成縮略圖不失真

發布時間:2022-02-05 15:44:18 來源:億速云 閱讀:253 作者:柒染 欄目:編程語言

今天給大家介紹一下php怎樣生成縮略圖不失真。文章的內容小編覺得不錯,現在給大家分享一下,覺得有需要的朋友可以了解一下,希望對大家有所幫助,下面跟著小編的思路一起來閱讀吧。

本文操作環境:Windows7系統、PHP7.1版、DELL G3電腦

php 怎么生成縮略圖不失真?

使用php函數等比例生成圖片縮略圖不失真的代碼

//等比例生成圖片縮略圖不失真

/**
    * 生成縮略圖
    * $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);
        //實際圖象的比例
        $ratio = ($width) / ($height);
        if (($isCut) == 1) {
            if ($ratio >= $resize_ratio) {
                //高度優先
                $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) {
                //寬度優先
                $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怎樣生成縮略圖不失真的全部內容了,更多與php怎樣生成縮略圖不失真相關的內容可以搜索億速云之前的文章或者瀏覽下面的文章進行學習哈!相信小編會給大家增添更多知識,希望大家能夠支持一下億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

定安县| 福海县| 许昌县| 鄂伦春自治旗| 成都市| 宜宾市| 万载县| 松溪县| 元谋县| 蒙阴县| 桐庐县| 山阳县| 桃源县| 崇明县| 宕昌县| 深圳市| 阿图什市| 株洲市| 灵石县| 揭阳市| 南汇区| 宜城市| 赫章县| 济南市| 工布江达县| 杭州市| 大连市| 乐清市| 霞浦县| 吉水县| 宿州市| 陈巴尔虎旗| 桃园市| 馆陶县| 山东| 库尔勒市| 阿合奇县| 合水县| 洛川县| 乌兰县| 常宁市|