<原文地址:http://www.cnblogs.com/liudao/archive/2007/03/30/693877.html>
圖片上傳(加水印、縮略圖、遠程保存)的簡單例子(應用於51aspx.com)
該源碼下載地址:http://51aspx.com/CV/ImageUpload
今天看到xiongeee發的文章使用使用FileUpload控件上傳圖片並自動生成縮略圖、自動生成帶文字和圖片的水印圖
覺得再加一個遠程圖片自動保存的功能可能就更實用了,在網上找了好多,都不完整,就自己寫了一個
就寫了一個測試,實現了以下功能
很實用的一個圖片上傳得例子
圖片上傳:生成縮略圖 加文字水印 圖片水印
51aspx.png爲水印圖片
遠程圖片抓取(保存到本地)支持jpg、gif、bmp、png
圖片抓取後自動以Auto+日期+原名稱命名
輸入遠程圖片地址(支持Html)
這裏僅僅貼出遠程保存部分代碼,其他部分請下載附件看好了,是一個完整的小例子,可能很多人覺得很菜,但是我覺得對大部分人還是有幫助的,也希望大家多多批評指點
2
3 WebClient client = new WebClient();
4 //備用Reg:<img.*?src=([/"/'])(http:////.+/.(jpg|gif|bmp|bnp))/1.*?>
5 Regex reg = new Regex("IMG[^>]*?src//s*=//s*(?:/"(?<1>[^/"]*)/"|'(?<1>[^/']*)')", RegexOptions.IgnoreCase);
6 MatchCollection m = reg.Matches(TextBox1.Text);
7
8 foreach (Match math in m)
9 {
10 string imgUrl = math.Groups[1].Value;
11 //在原圖片名稱前加YYMMDD重名名並上傳
12 Regex regName = new Regex(@"/w+.(?:jpg|gif|bmp|png)", RegexOptions.IgnoreCase);
13
14 string strNewImgName = DateTime.Now.ToShortDateString().Replace("-", "") + regName.Match(imgUrl).ToString();
15
16 try
17 {
18 //保存圖片
19 client.DownloadFile(imgUrl, Server.MapPath("ImgUpload/Auto/" + strNewImgName));
20
21 }
22 catch
23 {
24 }
25 finally
26 {
27
28 }
29
30 client.Dispose();
31 }
32
33