php按百分比生成縮略圖的代碼分享
于是翻了一下手冊,弄懂幾個函數(shù)后自己寫了一個簡單的php生成縮略圖的程序。沒有用類,我覺得一個函數(shù)就能搞定,而且對于新手來說更容易去理解,從而可以幫助到更多的人。
支持按比分比縮略,支持按指定的長寬縮略,默認按百分比。程序中注釋已經(jīng)很詳細了,如有問題可在下面留言,歡迎與我交流。
源碼如下:
<?php
/*
* param ori_img 原圖像的名稱和路徑
* param new_img 生成圖像的名稱
* param percent 表示按照原圖的百分比進行縮略,此項為空時默認按50%
* param width 指定縮略后的寬度
* param height 指定縮略后的高度
*
* 注:當(dāng) percent width height 都傳入值的時候,且percent>0時,優(yōu)先按照百分比進行縮略
* by:http://www.dhdzp.com 更多源碼與你分享
* 溫馨提示:使用此功能要在php.ini中開啟 gd2
*
**/
function makeThumb($ori_img, $new_img, $percent=50, $width=0, $height=0){
$original = getimagesize($ori_img); //得到圖片的信息,可以print_r($original)發(fā)現(xiàn)它就是一個數(shù)組
//$original[2]是圖片類型,其中1表示gif、2表示jpg、3表示png
switch($original[2]){
case 1 : $s_original = imagecreatefromgif($ori_img);
break;
case 2 : $s_original = imagecreatefromjpeg($ori_img);
break;
case 3 : $s_original = imagecreatefrompng($ori_img);
break;
}
if($percent > 0){
$width = $original[0] * $percent / 100;
$width = ($width > 0) ? $width : 1;
$height = $original[1] * $percent / 100;
$height = ($height > 0) ? $height : 1;
}
//創(chuàng)建一個真彩的畫布
$canvas = imagecreatetruecolor($width,$height);
imagecopyresized($canvas, $s_original, 0, 0, 0, 0, $width, $height, $original[0], $original[1]);
//header("Content-type:image/jpeg");
//imagejpeg($canvas); //向瀏覽器輸出圖片
$loop = imagejpeg($canvas, $new_img); //生成新的圖片
if($loop){
echo "OK!<br/>";
}
}
makeThumb("bhsj.jpg","suolue1.jpg",15,0,0); //生成原圖15%的縮略圖
makeThumb("bhsj.jpg","suolue2.jpg",0,200,120); //生成寬為100px,高為60px的縮略圖
makeThumb("bhsj.jpg","suolue3.jpg",15,200,120); //生成原圖15%的縮略圖(參數(shù)都填時,百分率優(yōu)先級大)
?>
相關(guān)文章
PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十六)
這篇文章主要介紹了PHP網(wǎng)頁游戲Xnova(ogame)源碼解讀的攻擊任務(wù)頁面的代碼流程,需要的朋友可以參考下2014-06-06
WordPress主題中添加文章列表頁頁碼導(dǎo)航的PHP代碼實例
這篇文章主要介紹了WordPress主題中添加文章列表頁碼導(dǎo)航的PHP代碼實例,這也是制作各種WordPress主題必備的基礎(chǔ)功能,需要的朋友可以參考下2015-12-12
AMFPHP php遠程調(diào)用(RPC, Remote Procedure Call)工具 快速入門教程
AMFPHP是PHP的遠程調(diào)用(RPC, Remote Procedure Call)工具。2010-05-05
通過修改Laravel Auth使用salt和password進行認證用戶詳解
這篇文章主要給大家介紹了關(guān)于通過修改Laravel Auth使用salt和password進行認證用戶的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-08-08
php解決搶購秒殺抽獎等大流量并發(fā)入庫導(dǎo)致的庫存負數(shù)的問題
最近在做一個團購項目,遇到個問題,就是在搶購、秒殺、抽獎等活動時,庫存數(shù)量有限,但是同時下單人數(shù)超過了庫存數(shù)量,就會導(dǎo)致商品超售問題。那么我們怎么來解決這個問題呢,我的思路如下:2014-06-06
php curl模擬post請求和提交多維數(shù)組的示例代碼
這篇文章主要介紹了php curl模擬post請求和提交多維數(shù)組的示例代碼,需要的朋友可以參考下2015-11-11

