图片上传(加水印、缩略图、远程保存)的简单例子(应用于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
try17

{18
//保存图片19
client.DownloadFile(imgUrl, Server.MapPath("ImgUpload/Auto/" + strNewImgName));20

21
}22
catch23

{24
}25
finally26

{27

28
}29

30
client.Dispose();31
}32

33

下载完整源码 http://51aspx.com/CV/ImageUpload












