最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

asp.net实现生成缩略图及给原始图加水印的方法示例

来源:动视网 责编:小采 时间:2020-11-27 22:35:26
文档

asp.net实现生成缩略图及给原始图加水印的方法示例

asp.net实现生成缩略图及给原始图加水印的方法示例:本文实例讲述了asp.net实现生成缩略图及给原始图加水印的方法。分享给大家供大家参考,具体如下: using System.IO; using System.Drawing.Imaging; private void Button1_ServerClick(object sender, System.EventA
推荐度:
导读asp.net实现生成缩略图及给原始图加水印的方法示例:本文实例讲述了asp.net实现生成缩略图及给原始图加水印的方法。分享给大家供大家参考,具体如下: using System.IO; using System.Drawing.Imaging; private void Button1_ServerClick(object sender, System.EventA


本文实例讲述了asp.net实现生成缩略图及给原始图加水印的方法。分享给大家供大家参考,具体如下:

using System.IO;
using System.Drawing.Imaging;
private void Button1_ServerClick(object sender, System.EventArgs e) 
{
 Graphics g=null;
 System.Drawing.Image upimage=null;
 System.Drawing.Image thumimg=null;
 System.Drawing.Image simage=null;
 Bitmap outputfile=null;
 try 
 {
 string extension = Path.GetExtension(File1.PostedFile.FileName).ToUpper();
 string filename = DateTime.Now.ToString("yyyyMMddhhmmss");
 string smallpath = Server.MapPath(".")+"/smallimg/";
 string bigpath = Server.MapPath(".")+"/bigimg/";
 int width,height,newwidth,newheight;
 System.Drawing.Image.GetThumbnailImageAbort callb =new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);
 if(!Directory.Exists(smallpath))
 Directory.CreateDirectory(smallpath);
 if(!Directory.Exists(bigpath))
 Directory.CreateDirectory(bigpath);
 Stream upimgfile = File1.PostedFile.InputStream;
 string simagefile = Server.MapPath("a8logo.jpg"); //要加水印的文件
 simage=System.Drawing.Image.FromFile(simagefile);
 upimage= System.Drawing.Image.FromStream(upimgfile); //上传的图片
 width = upimage.Width;
 height = upimage.Height;
 if(width>height) 
 {
 newwidth=200;
 newheight =(int)((double)height/(double)width * (double)newwidth);
 } else 
 {
 newheight=200;
 newwidth=(int)((double)width/(double)height * (double)newheight);
 }
 thumimg = upimage.GetThumbnailImage(newwidth,newheight,callb,IntPtr.Zero);
 outputfile=new Bitmap(upimage);
 g=Graphics.FromImage(outputfile);
 g.DrawImage(simage,new Rectangle(upimage.Width-simage.Width,upimage.Height-simage.Height,upimage.Width,upimage.Height),0,0,upimage.Width,upimage.Height,GraphicsUnit.Pixel);
 string newpath = bigpath + filename + extension; //原始图路径
 string thumpath = smallpath + filename + extension; //缩略图路径
 outputfile.Save(newpath);
 thumimg.Save(thumpath);
 outputfile.Dispose();
 }
 catch(Exception ex) 
 {
 throw ex;
 }
 finally 
 {
 if(g!=null)
 g.Dispose();
 if(thumimg!=null)
 thumimg.Dispose();
 if(upimage!=null)
 upimage.Dispose();
 if(simage!=null)
 simage.Dispose();
 }
}
public bool ThumbnailCallback() 
{
 return false;
}

更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net字符串操作技巧汇总》、《asp.net操作XML技巧总结》、《asp.net操作json技巧总结》、《asp.net文件操作技巧汇总》、《asp.net ajax技巧总结专题》及《asp.net缓存操作技巧总结》。

希望本文所述对大家asp.net程序设计有所帮助。

文档

asp.net实现生成缩略图及给原始图加水印的方法示例

asp.net实现生成缩略图及给原始图加水印的方法示例:本文实例讲述了asp.net实现生成缩略图及给原始图加水印的方法。分享给大家供大家参考,具体如下: using System.IO; using System.Drawing.Imaging; private void Button1_ServerClick(object sender, System.EventA
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top