In diesem Artikel wird hauptsächlich die Methode von asp.net zum Generieren von Miniaturansichten und zum Hinzufügen von Wasserzeichen zu Originalbildern vorgestellt. Er analysiert die Implementierungstechniken von Miniaturansichten und Wasserzeichenoperationen von asp.net-Bildern anhand spezifischer Beispiele . Das folgende
Das Beispiel in diesem Artikel beschreibt die Methode zum Generieren von Miniaturansichten und zum Hinzufügen von Wasserzeichen zu den Originalbildern in asp.net. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
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; }
Das obige ist der detaillierte Inhalt vonBeispiel für die Erstellung von Miniaturansichten und das Hinzufügen von Wasserzeichen in asp.net. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!