Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)delv
published in(发表于) 2014/1/24 9:04:00
asp.net2.0按比例生成图片的缩略图_[Asp.Net教程]

asp.net2.0按比例生成图片的缩略图_[Asp.Net教程]

















1、建立Default.aspx文件和文件夹upFile

2、Default..aspx代码如下:







<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>





无标题页




传图片:
onClick="btnUp_Click">

原图片:

缩略图:







3、Default..aspx.cs代码如下:







using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{

System.Drawing.Image image, newimage; //定义image类的对象
protected string imagePath;   //图片路径
protected string imageType;   //图片类型
protected string imageName;   //图片名称
//提供一个回调方法,用于确定Image对象在执行生成缩略图操作时何时提前取消执行
//如果此方法确定 GetThumbnailImage 方法应提前停止执行,则返回 true;否则返回 false
System.Drawing.Image.GetThumbnailImageAbort callb = null;

protected void Page_Load(object sender, EventArgs e)
{

}
protected void btnUp_Click(object sender, EventArgs e)
{
string mPath;

if ("" != upImage.PostedFile.FileName)
{
imagePath = upImage.PostedFile.FileName;
//取得图片类型
imageType = imagePath.Substring(imagePath.LastIndexOf(".") + 1);
//取得图片名称
imageName = imagePath.Substring(imagePath.LastIndexOf("\") + 1);
//判断是否是JPG或者GIF图片,这里只是举个例子,并不一定必须是这两种图片
if ("JPG"!= imageType.ToUpper() && "GIF" != imageType.ToUpper())
{
Response.Write("");
return;
}
else
{
try
{
//建立虚拟路径
mPath = Server.MapPath("upFile");
//保存到虚拟路径
upImage.PostedFile.SaveAs(mPath + "\" + imageName);
//显示原图
imageSource.ImageUrl = "upFile/" + imageName;
//为上传的图片建立引用
image = System.Drawing.Image.FromFile(mPath + "\" + imageName);

int smallW = 100;//小图片宽
int smallH = smallW * image.Height / image.Width;//小图片高
//生成缩略图
newimage = image.GetThumbnailImage(smallW, smallH, callb, new System.IntPtr());
//把缩略图保存到指定的虚拟路径
newimage.Save(Server.MapPath("upFile") + "\small" + imageName);
//释放image对象占用的资源
image.Dispose();
//释放newimage对象的资源
newimage.Dispose();
//显示缩略图
imageSmall.ImageUrl = "upFile/" + "small" + imageName;
}
catch
{
Response.Write("上传失败!");
}

}
}
}
}





4:运行效果如下:

























If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759