麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > PHP > 正文

PHP上傳圖片進行等比縮放可增加水印功能

2020-03-22 20:22:12
字體:
來源:轉載
供稿:網友
啥也不說,直接上代碼,大家可以自行添加增加水印功能:
復制代碼 代碼如下:
?php
/**
*
* @author zhao jinhan
* @date 2014年1月13日11:54:30
* @email [email protected]
*
*/
header('Content-type:text/html; charset=utf-8');
//定義縮略圖的寬高
define('THUMB_WIDTH',300);
define('THUMB_HEIGHT',300);

/**
* 重新生成上傳的文件名
* @return string
* @author zhao jinhan
*
*/
function _file_type($filetype = null){
switch($filetype)
{
case "image/jpeg":
$fileextname = "jpg";
break;
case "image/gif":
$fileextname = "gif";
break;
case "image/png":
$fileextname = "png";
break;
default:
$fileextname = false;
break;
}
return $fileextname?date('YmdHis',time()).'.'.$fileextname:false;
}

/**
*
* @param string $filename
* @param string $width
* @param string $height
* @param string $quality
* @param string $savepath
* @return boolean
*/
function _make_thumb($filename='', $width=THUMB_WIDTH, $height=THUMB_HEIGHT, $savepath='./upload'){
if(file_exists($filename)){
//上傳圖片的尺寸
$imagesize=getimagesize($filename);
$imagewidth=$imagesize[0];
$imageheight=$imagesize[1];
$mime = $imagesize['mime'];
//寬高比例
$ratio = $imagewidth/$imageheight;

//新建一個背景圖片
$bgimg = imagecreatetruecolor($width, $height);
$white = imagecolorallocate($bgimg, 255, 255, 255);
//填充背景色為白色
imagefill($bgimg,0,0,$white);
if($mime == 'image/gif'){
$im = @imagecreatefromgif($filename); /* Attempt to open */
$outfun = 'imagegif';
}elseif($mime == 'image/png'){
$im = @imagecreatefrompng($filename); /* Attempt to open */
$outfun = 'imagepng';
}else{
$im = @imagecreatefromjpeg($filename); /* Attempt to open */
$outfun = 'imagejpeg';
}

if($ratio 1){
//寬度較大
if($imagewidth $width){
//縮放圖片到背景圖片上
$new_width = $width;
$new_height = ($width*$imageheight)/$imagewidth;
$bg_y = ceil(abs(($height-$new_height)/2));
imagecopyresampled($bgimg, $im, 0, $bg_y, 0, 0, $new_width, $new_height, $imagewidth, $imageheight);
}else{
//復制圖片到背景圖片上
$copy = true;
}
}else{
//高度較大
if($imageheight $height){
//縮放圖片
$new_height = $height;
$new_width = ($height*$imagewidth)/$imageheight;
$bg_x = ceil(($width-$new_width)/2);
imagecopyresampled($bgimg, $im, $bg_x, 0, 0, 0, $new_width, $new_height, $imagewidth, $imageheight);
}else{
//復制圖片到背景圖片上
$copy = true;
}
}
if($copy){
//復制圖片到背景圖片上
$bg_x = ceil(($width-$imagewidth)/2);
$bg_y = ceil(($height-$imageheight)/2);
imagecopy($bgimg, $im, $bg_x, $bg_y, 0, 0, $imagewidth, $imageheight);
}
$ext = _file_type($mime);
$outfun($bgimg, $savepath.'/'.$ext);
imagedestroy($bgimg);
return $savepath.'/'.$ext;
}else{
return false;
}
}

if($_POST){
$size = $_POST['size']?strtoupper(trim($_POST['size'])):'2M';
$imgsize = $_FILES['img']['size']?$_FILES['img']['size']/(1024*1024):0;
$imgwidth = $imgheight = $_POST['width-height']?intval($_POST['width-height']):300;
//自定定義文件上傳大小
ini_set('upload_max_filesize',$size);
$mathsize = str_replace('M','',$size);
if($imgsize $mathsize){
echo "圖片大小不得超過{$size}!";
return;
}
if($file_name = _file_type($_FILES['img']['type'])){
if($_FILES['img']['error'] == UPLOAD_ERR_OK){
$savepath = 'upload/';
if(!is_dir($savepath)){
mkdir($savepath,0644);
}
//生成縮略圖
$thumb_file = _make_thumb($_FILES['img']['tmp_name'], $imgwidth, $imgheight, $savepath);
//move_uploaded_file($_FILES['img']['tmp_name'],$savepath.$file_name);
echo "生成后的圖片為: img src='".$thumb_file."' /
}else{
echo $_FILES['img']['error'];
return;
}
}else{
echo "圖片格式不正確,請上傳jpg,gif,png的格式!";
return;
}



}else{
echo EOT
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8"
title 縮放圖片保存成正方形 /title
/head
body
form action="" method="POST" enctype="multipart/form-data"
div
label 上傳一張圖片: /label
input type="file" name="img" /
/div
div
label 生成縮略圖的寬高(單位px): /label
input type="text" name="width-height" value="300" /
/div
div
label 文件大小上限: /label
input type="text" name="size" value="2M" /
/div
div input type="submit" name="submit" value="提交" / /div
/form
/body
/html
EOT;
}
PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一级毛片在线看 | 久久线视频 | 亚洲精品com| 国产午夜精品在线 | 国产亚洲精品久久久久久大师 | 日韩欧美色综合 | 97超碰资源站 | 免费人成在线播放 | 久久老司机精品视频 | 久草在线最新免费 | 日韩黄色免费电影 | 男男啪羞羞视频网站 | 久久亚洲激情 | 亚洲国产精品99 | 成人在线视频在线观看 | 黄色网址入口 | 欧美老逼 | 夜夜夜精品视频 | av电影在线观看网站 | 暴力强行进如hdxxx | 午夜在线视频观看 | 欧美女优一区 | 成人在线视频精品 | 久久久精品视频国产 | 久久久大片 | 成人免费一区二区三区在线观看 | 免费黄色欧美视频 | 2017亚洲男人天堂 | 毛片118极品美女写真 | 黄色网页在线看 | 国产视频在线免费观看 | 免费人成年短视频在线观看网站 | 色柚视频网站ww色 | 在线观看av国产一区二区 | 久久久国产一区二区三区 | 国产青草视频在线观看视频 | 55夜色66夜色国产精品视频 | 免费国产网站 | 全黄性性激高免费视频 | 久久久久国产一区二区三区不卡 | 中文在线观看www |