亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

ASP.Net 上傳圖片并生成高清晰縮略圖

2024-07-10 13:20:51
字體:
來源:轉載
供稿:網友
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>無標題頁</title>
</head>
<body>
<form runat="server">
<div>
<input runat="server" type="file" /></div><asp:Button runat="server" Text="Button" />
</form>
</body>
</html>
protected void Button1_Click(object sender, EventArgs e)
{
string a = this.UpLoadImage(this.File1, "UpLoad/", "thumb_", 118, 118);
}
/// <summary>
/// asp.net上傳圖片并生成縮略圖
/// </summary>
/// <param>HtmlInputFile控件</param>
/// <param>保存的路徑,些為相對服務器路徑的下的文件夾</param>
/// <param>縮略圖的thumb</param>
/// <param>生成縮略圖的寬度</param>
/// <param>生成縮略圖的高度</param>
/// <returns>縮略圖名稱</returns>
public string UpLoadImage(HtmlInputFile upImage, string sSavePath, string sThumbExtension, int intThumbWidth, int intThumbHeight)
{
string sThumbFile = "";
string sFilename = "";
if (upImage.PostedFile != null)
{
HttpPostedFile myFile = upImage.PostedFile;
int nFileLen = myFile.ContentLength;
if (nFileLen == 0)
return "沒有選擇上傳圖片";
//獲取upImage選擇文件的擴展名
string extendName = System.IO.Path.GetExtension(myFile.FileName).ToLower();
//判斷是否為圖片格式
if (extendName != ".jpg" && extendName != ".jpge" && extendName != ".gif" && extendName != ".bmp" && extendName != ".png")
return "圖片格式不正確";
byte[] myData = new Byte[nFileLen];
myFile.InputStream.Read(myData, 0, nFileLen);
sFilename = System.IO.Path.GetFileName(myFile.FileName);
int file_append = 0;
//檢查當前文件夾下是否有同名圖片,有則在文件名+1
while (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath(sSavePath + sFilename)))
{
file_append++;
sFilename = System.IO.Path.GetFileNameWithoutExtension(myFile.FileName)
+ file_append.ToString() + extendName;
}
System.IO.FileStream newFile
= new System.IO.FileStream(System.Web.HttpContext.Current.Server.MapPath(sSavePath + sFilename),
System.IO.FileMode.Create, System.IO.FileAccess.Write);
newFile.Write(myData, 0, myData.Length);
newFile.Close();
//以上為上傳原圖
try
{
//原圖加載
using (System.Drawing.Image sourceImage = System.Drawing.Image.FromFile(System.Web.HttpContext.Current.Server.MapPath(sSavePath + sFilename)))
{
//原圖寬度和高度
int width = sourceImage.Width;
int height = sourceImage.Height;
int smallWidth;
int smallHeight;
//獲取第一張繪制圖的大小,(比較 原圖的寬/縮略圖的寬 和 原圖的高/縮略圖的高)
if (((decimal)width) / height <= ((decimal)intThumbWidth) / intThumbHeight)
{
smallWidth = intThumbWidth;
smallHeight = intThumbWidth * height / width;
}
else
{
smallWidth = intThumbHeight * width / height;
smallHeight = intThumbHeight;
}
//判斷縮略圖在當前文件夾下是否同名稱文件存在
file_append = 0;
sThumbFile = sThumbExtension + System.IO.Path.GetFileNameWithoutExtension(myFile.FileName) + extendName;
while (System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath(sSavePath + sThumbFile)))
{
file_append++;
sThumbFile = sThumbExtension + System.IO.Path.GetFileNameWithoutExtension(myFile.FileName) +
file_append.ToString() + extendName;
}
//縮略圖保存的絕對路徑
string smallImagePath = System.Web.HttpContext.Current.Server.MapPath(sSavePath) + sThumbFile;
//新建一個圖板,以最小等比例壓縮大小繪制原圖
using (System.Drawing.Image bitmap = new System.Drawing.Bitmap(smallWidth, smallHeight))
{
//繪制中間圖
using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap))
{
//高清,平滑
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.Clear(Color.Black);
g.DrawImage(
sourceImage,
new System.Drawing.Rectangle(0, 0, smallWidth, smallHeight),
new System.Drawing.Rectangle(0, 0, width, height),
System.Drawing.GraphicsUnit.Pixel
);
}
//新建一個圖板,以縮略圖大小繪制中間圖
using (System.Drawing.Image bitmap1 = new System.Drawing.Bitmap(intThumbWidth, intThumbHeight))
{
//繪制縮略圖
using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap1))
{
//高清,平滑
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.Clear(Color.Black);
int lwidth = (smallWidth - intThumbWidth) / 2;
int bheight = (smallHeight - intThumbHeight) / 2;
g.DrawImage(bitmap, new Rectangle(0, 0, intThumbWidth, intThumbHeight), lwidth, bheight, intThumbWidth, intThumbHeight, GraphicsUnit.Pixel);
g.Dispose();
bitmap1.Save(smallImagePath, System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
}
}
}
catch
{
//出錯則刪除
System.IO.File.Delete(System.Web.HttpContext.Current.Server.MapPath(sSavePath + sFilename));
return "圖片格式不正確";
}
//返回縮略圖名稱
return sThumbFile;
}
return "沒有選擇圖片";
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日本欧美一级片| 国产精品视频自在线| 91亚洲精品在线观看| 国产精品久久99久久| 国产成人精品在线| 欧美电影免费观看电视剧大全| 久久久久久香蕉网| 亚洲欧洲高清在线| 国产在线精品成人一区二区三区| 91色在线观看| 久久久精品欧美| 欧美电影免费观看高清| 成人精品网站在线观看| 91美女高潮出水| 亚洲第一国产精品| 国产精品日韩一区| 日韩网站免费观看高清| 亚洲一区二区三区在线视频| 亚洲黄一区二区| 亚洲情综合五月天| 久久久久久91| 国产成人涩涩涩视频在线观看| 亚洲精品国产欧美| 91久久久久久久久| 日韩欧美综合在线视频| 2019最新中文字幕| 欧美日韩亚洲一区二区三区| 懂色av中文一区二区三区天美| 欧美老女人www| 亚洲综合在线中文字幕| 国产精品久久久久久久久| 国产精品国内视频| 精品成人国产在线观看男人呻吟| 精品国产欧美一区二区三区成人| 成人国产在线激情| 91日韩在线播放| 在线播放日韩精品| 国产经典一区二区| 亚洲网站在线看| 精品国产一区二区三区久久狼黑人| 久久中国妇女中文字幕| 日韩在线一区二区三区免费视频| 亚洲午夜av电影| 国产精品视频网址| 欧美精品在线免费观看| 国外成人在线视频| 亚洲九九九在线观看| 亚洲毛片在线观看| 日本不卡免费高清视频| 永久免费毛片在线播放不卡| 中文字幕日韩在线播放| 一本大道香蕉久在线播放29| 精品一区二区三区四区| 久久99国产精品久久久久久久久| 午夜精品一区二区三区在线| 国产精品永久免费视频| 久久久999成人| 国产午夜精品一区二区三区| 91在线免费网站| 亚洲欧美激情在线视频| 久久精品视频导航| 97视频色精品| 91精品国产综合久久男男| 亚洲无线码在线一区观看| 国产精品视频久久久| 欧美精品在线网站| 欧美精品亚州精品| 亚洲free嫩bbb| 国产精品久久久久久久9999| 国产欧美久久久久久| 尤物九九久久国产精品的分类| 美女扒开尿口让男人操亚洲视频网站| 最新中文字幕亚洲| 国产中文字幕91| 成人激情视频在线观看| 欧美亚洲激情视频| 91亚洲精品久久久久久久久久久久| 久久国产精品电影| 欧美激情一区二区三级高清视频| 欧美专区在线播放| 97色在线视频观看| 亚洲国产黄色片| 日韩中文字幕国产| 亚洲国产成人一区| 91国自产精品中文字幕亚洲| 狠狠色香婷婷久久亚洲精品| 亚洲老司机av| 日韩av成人在线观看| 自拍偷拍亚洲在线| 久久免费视频在线观看| 久久久久女教师免费一区| 久久久亚洲网站| 亚洲成人av在线| 97免费在线视频| 国产一区二区美女视频| 日本国产精品视频| 久久精品视频亚洲| 亚洲国产小视频在线观看| 精品无人区乱码1区2区3区在线| 欧美丰满老妇厨房牲生活| 97精品国产97久久久久久免费| 久久99精品久久久久久噜噜| 亚洲国产日韩欧美在线图片| 日韩中文字幕在线视频| 激情久久av一区av二区av三区| 亚洲男人天天操| 欧美黑人性猛交| 亚洲国产欧美在线成人app| 68精品久久久久久欧美| 国产精品中文在线| 亚洲一区二区免费在线| 久久精品国产久精国产思思| 欧美日韩午夜视频在线观看| 国产精品影片在线观看| 最新国产成人av网站网址麻豆| 91精品久久久久久| 亚洲国产精品一区二区久| 亚洲国产精品va在线观看黑人| 97成人在线视频| 欧美色视频日本版| 亚洲资源在线看| 欧美成人精品一区二区三区| 亚洲色图日韩av| 亚洲第一区中文字幕| 精品国产电影一区| 日韩福利伦理影院免费| 欧美噜噜久久久xxx| 国产成人精品免高潮费视频| 国产999精品视频| 亚洲网站在线看| 亚洲午夜小视频| 久久久久久国产精品久久| 欧美激情精品久久久久久黑人| 久久精视频免费在线久久完整在线看| 在线播放日韩精品| 日韩欧美在线视频日韩欧美在线视频| 日韩av在线最新| 91色视频在线导航| 最新国产成人av网站网址麻豆| 日本久久久a级免费| 欧美二区乱c黑人| 久久免费视频这里只有精品| 成人久久18免费网站图片| 国产免费一区二区三区香蕉精| 97视频在线观看成人| 久热在线中文字幕色999舞| 久久久久久免费精品| 日韩欧美在线视频免费观看| 亚洲一区二区三区xxx视频| 国产中文欧美精品| 国产精品啪视频| 久久久999成人| 91av视频在线免费观看| 一本色道久久88综合日韩精品| 国产精品久久久久久久久免费看| 欧美成人剧情片在线观看| 亚洲最新视频在线| 欧美亚洲视频在线看网址| 亚洲毛片一区二区| 俺也去精品视频在线观看| 成人免费视频97| 久久国产精品久久国产精品| 97欧美精品一区二区三区| 国产精品国模在线|