很多時候需要在用戶上傳的圖片上加上版權或者一些其他的附加文字信息,如何實現這樣的功能,下面帖個簡單實現的例子,起到拋磚引玉的作用。
<%@ Page Language="c#" Debug="true" Trace="true"%>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>
<Html>
<script runat =server>
void UploadBtn_Click(Object sender, EventArgs e) {
String filename;
String filename1;
String[] filename2;
int q;
filename=UploadFile.PostedFile.FileName ;
filename2=filename.Split(new Char[] {'\\'});
q=filename2.GetUpperBound(0);
filename1=filename2[q];
dis.Text="上傳文件名:"+filename1+"<br>";
UploadFile.PostedFile.SaveAs(Server.MapPath(filename1));
ImageEditor.Visible = true;
dis.Text+="文件大小:"+UploadFile.PostedFile.ContentLength+"字節數";
Image1.Src=filename1;
}
void UpdateBtn_Click(Object sender, EventArgs e) {
String filename1;
filename1=Image1.Src;
System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath(filename1));
System.Drawing.Image newimage = new Bitmap(image.Width, image.Height, PixelFormat.Format32bppRGB);
Graphics g = Graphics.FromImage(newimage);
g.DrawImage(image,0,0,image.Width,image.Height);
Font f = new Font(FontType.SelectedItem.Text, Int32.Parse(FontSize.SelectedItem.Text));
Brush b = new SolidBrush(Color.Red);
g.DrawString(Caption.Text, f, b, 10, 140);
g.Dispose();
System.Drawing.Image thumbImage = newimage.GetThumbnailImage(Int32.Parse(Width.Text),Int32.Parse
(Height.Text),null,0);
image.Dispose();
thumbImage.Save(Server.MapPath(filename1),ImageFormat.JPEG);
Image1.Src=filename1;
Caption.Text="";
}
</script>
<body>
<ASP:label id="dis" runat=server/>
<form enctype="multipart/form-data" runat=server>
選擇上傳文件: <input id="UploadFile" type=file runat=server>
<ASP:button Text="Upload Me!" OnClick="UploadBtn_Click" runat=server/>
<hr>
<ASP:panel id="ImageEditor" Visible=false runat=server>
<img ID="Image1" src="" runat="server"/>
圖像寬度: <ASP:textbox id="Width" runat=server/>
圖像高度: <ASP:textbox id="Height" runat=server/> <br>
文本標題: <ASP:textbox id="Caption" runat=server/>
標題字號: <ASP:dropdownlist id="FontSize" runat=server>
<asp:listitem>14</ASP:listitem>
<asp:listitem>18</ASP:listitem>
<asp:listitem>26</ASP:listitem>
<asp:listitem>36</ASP:listitem>
<asp:listitem>48</ASP:listitem>
<asp:listitem>62</ASP:listitem>
</ASP:dropdownlist>
標題字體: <ASP:dropdownlist id="FontType" runat=server>
<asp:listitem>黑體</ASP:listitem>
<asp:listitem>仿宋</ASP:listitem>
<asp:listitem>隸書</ASP:listitem>
<asp:listitem>楷書</ASP:listitem>
<asp:listitem>彩雲</ASP:listitem>
<asp:listitem>新魏</ASP:listitem>
</ASP:dropdownlist>
<ASP:button Text="Update Image" OnClick="UpdateBtn_Click" runat=server/>
</ASP:panel>
</form>
</body>
</Html>