国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php圖片處理:加水印、縮略圖的實現

2024-05-04 23:05:58
字體:
來源:轉載
供稿:網友

圖片處理:加水印、縮略圖的實現(自定義函數:watermark、thumbnail)代碼有點長,但不復雜。
 

<?php /************************************ //函數: watermark($bigimg, $smallimg, $coord = 1) //作用: 添加水印 //參數: $bigimg 必選。大圖片--要加上水印的圖片 $smallimg 必選。小圖片 $coord 可選。水印在大圖中的位置, 1 左上角; 2 右上角; 3 右下角; 4 左下角; 5 中間 //示例: watermark('datu.png', 'xiaotu.png', 3); //給datu.png打上水印,水印位置在右下角 *************************************/ function watermark($bigimg, $smallimg, $coord = 1){ //載入兩張圖片,并轉成php識別的編碼格式, //等同于 imagecreate 函數,只不過這里創建的不是一個空圖片。 $bi = getimagesize($bigimg); switch($bi[2]){ case 1: $im1 = imagecreatefromgif($bigimg);break; case 2; $im1 = imagecreatefromjpeg($bigimg);break; case 3; $im1 = imagecreatefrompng($bigimg);break; } $si = getimagesize($smallimg); switch($si[2]){ case 1: $im2 = imagecreatefromgif($smallimg);break; case 2; $im2 = imagecreatefromjpeg($smallimg);break; case 3; $im2 = imagecreatefrompng($smallimg);break; } // 創建水印--原理:復制小圖到大圖上。這里注意坐標值的計算 switch($coord){ case 1: imagecopy ( $im1, $im2, 0, 0, 0, 0, $si[0], $si[1] ); break; case 2: imagecopy ( $im1, $im2, $bi[0]-$si[0], 0, 0, 0, $si[0], $si[1] ); break; case 3: imagecopy ( $im1, $im2, $bi[0]-$si[0], $bi[1]-$si[1], 0, 0, $si[0], $si[1] ); break; case 4: imagecopy ( $im1, $im2, 0, $bi[1]-$si[1], 0, 0, $si[0], $si[1] ); break; case 5: imagecopy ( $im1, $im2, ($bi[0]-$si[0])/2, ($bi[1]-$si[1])/2, 0, 0, $si[0], $si[1] ); break; } //根據后綴名生成不同格式的圖片文件 switch($bi[2]){ case 1: imagegif($im1);break; case 2; imagejpeg($im1);break; case 3; imagepng($im1);break; } imagedestroy($im1); } /************************************************ //函數: thumbnail($srcimg, $multiple) //作用: 生成一張縮略圖 //參數: // $srcimg 必選。源圖片文件名 // $multiple 可選。縮略倍數,默認為2倍,即縮小為原來的1/2 //注意: 只支持gif、jpg、png的格式圖片。 //示例: thumbnail('我的圖片.jpg', 5); *************************************************/ function thumbnail($srcimg, $multiple = 2){ //載入圖片并保存其信息到數組 $srcimg_arr = getimagesize($srcimg); //計算縮略倍數 $thumb_width = $srcimg_arr[0] / $multiple; $thumb_height = $srcimg_arr[1] / $multiple; //判斷:要建立什么格式的圖片(轉成php識別的編碼) switch($srcimg_arr[2]){ case 1: $im = imagecreatefromgif($srcimg);break; case 2; $im = imagecreatefromjpeg($srcimg);break; case 3; $im = imagecreatefrompng($srcimg);break; } //開始縮略操作 $thumb = imagecreatetruecolor($thumb_width, $thumb_height); imagecopyresized($thumb, $im, 0, 0, 0 ,0, $thumb_width, $thumb_height, $srcimg_arr[0], $srcimg_arr[1]); switch($srcimg_arr[2]){ case 1: imagegif($thumb); break; case 2; imagejpeg($thumb); break; case 3; imagepng($thumb); break; } imagepng($thumb); imagedestroy($thumb); } //測試 時不要同時使用這兩個函數。 //watermark('datu.png','xiaotu.png',5); thumbnail('abc.png',3); ?> 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 凤翔县| 洮南市| 临沂市| 江城| 武清区| 德兴市| 界首市| 尉氏县| 壶关县| 潍坊市| 武胜县| 颍上县| 湛江市| 花垣县| 喀喇沁旗| 鞍山市| 湟中县| 中西区| 高青县| 郯城县| 江孜县| 汉寿县| 马关县| 三江| 井冈山市| 巴塘县| 合山市| 阳西县| 平潭县| 安多县| 东乡族自治县| 大丰市| 泾源县| 浦北县| 五莲县| 衡阳县| 南平市| 民勤县| 正安县| 阳西县| 屏南县|