Heim  >  Artikel  >  Backend-Entwicklung  >  ASP.NET lädt Bilder hoch und generiert Miniaturansichten mit Copyright-Informationen

ASP.NET lädt Bilder hoch und generiert Miniaturansichten mit Copyright-Informationen

巴扎黑
巴扎黑Original
2017-05-21 13:52:161064Durchsuche

代码如下:

<%@ 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(&#39;\\&#39;)+1); 
string newfile="Uploads/"+uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf(&#39;\\&#39;)+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(&#39;\\&#39;)+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>

Das obige ist der detaillierte Inhalt vonASP.NET lädt Bilder hoch und generiert Miniaturansichten mit Copyright-Informationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn