C#.Net上传图片并生成缩略图的代码

<% @ Page Language = " C# "  ResponseEncoding = " gb2312 "   %>
<% @ import Namespace = " System "   %>
<% @ import Namespace = " System.IO "   %>
<% @ import Namespace = " System.Drawing "   %>
<% @ import Namespace = " System.Drawing.Imaging "   %>
< script  runat ="server" >  
void  Page_Load(Object sender, EventArgs e)
{
if ( ! Page.IsPostBack)
{
ImgPreview.Visible
= false ;
}
}
void  GetThumbnailImage( int  width, int  height,string strInfo, int  left, int  right)
{
string file
= " Uploads/ " + uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf( ' / ' ) + 1 );
string newfile
= " Uploads/ " + uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf( ' / ' ) + 1 ) + " .jpg " ;
string strAdd
= strInfo;
System.Drawing.Image oldimage 
=  System.Drawing.Image.FromFile(Server.MapPath(file));
System.Drawing.Image thumbnailImage 
=
oldimage.GetThumbnailImage(width, height,
new  System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), IntPtr.Zero);
Response.Clear();
Bitmap output
= new  Bitmap(thumbnailImage);
Graphics g
= Graphics.FromImage(output);
g.DrawString(strAdd,
new  Font( " Courier New " 14 ), new  SolidBrush(Color.Red),left,right);
output.Save(Server.MapPath(newfile),System.Drawing.Imaging.ImageFormat.Jpeg);
Response.ContentType 
=   " image/gif " ;
ImgPreview.Visible
= true ;
ImgPreview.ImageUrl
= newfile;
}
bool ThumbnailCallback()
{
return   true ;
}

void  Button_Click(object sender, EventArgs e)
{
int  width,height,left,right;
string strAddInfo
= txtAddInfo.Text;
width
= Int32.Parse(txtWidth.Text);
height
= Int32.Parse(txtHeight.Text);
left
= Int32.Parse(txtLeft.Text);
right
= Int32.Parse(txtRight.Text);
if ( ! (uploadFile.PostedFile.ContentLength > 0 ))
{
lblErrInfo.Text
= " 没有选择文件 " ;
}
else
{

string path 
=  Server.MapPath( " ./Uploads/ " + uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf( ' / ' ) + 1 ));
if (File.Exists(path))
{
lblErrInfo.Text
= " 已经有同名文件 " ;
}
else
{
uploadFile.PostedFile.SaveAs(path); 
GetThumbnailImage(width,height,strAddInfo,left,right);


}
</ script >
< html >
< head >
</ head >
< body >
< form  method ="post"  enctype ="multipart/form-data"  runat ="server" >
< p >
< input  id ="uploadFile"  type ="file"  runat ="server"   />
< asp:Label  id ="lblErrInfo"  runat ="server"  forecolor ="Red" ></ asp:Label >
</ p >
< p >
width:
< asp:TextBox  id ="txtWidth"  runat ="server"  Width ="40px" > 100 </ asp:TextBox >
height:
< asp:TextBox  id ="txtHeight"  runat ="server"  Width ="40px" > 150 </ asp:TextBox >

</ p >
< p >
添加信息:
< asp:TextBox  id ="txtAddInfo"  runat ="server" > AspxBoy.Com </ asp:TextBox >
</ p >
< p >
信息位置:left:
< asp:TextBox  id ="txtLeft"  runat ="server"  Width ="40px" > 10 </ asp:TextBox >
right:
< asp:TextBox  id ="txtRight"  runat ="server"  Width ="40px" > 135 </ asp:TextBox >
</ p >
< p >

< input  id ="button"  type ="button"  value ="上传生成缩略图"  onServerClick ="Button_Click"  runat ="server"   />
</ p >
< p >< asp:Image  id ="ImgPreview"  runat ="server" ></ asp:Image >
</ p >
<!--  Insert content here  -->
</ form >
</ body >
</ html >

 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值