远程图片自动保存到本地服务器,并利用aspjpeg为图片加上水印

 1   
 2'函数功能:远程图片自动保存到本地服务器,并利用aspjpeg为图片加上水印   
 3'(注意:请先在目录下创建images目录,用来保存临时图片)   
 4'程序落伍者:我是星星   
 5'加入落伍第二份原创程序,HOHO,今天一定要落伍类,5.6日注册,5.7日落伍,庆祝一下!   
 6'本程序需要在服务器上安装"aspjpeg组件"否则无法正常使用   
 7'也可以只取'''''22222222'''''''以上的部分,这部分可以保存图片,第二部分是进行水印增加   
 8'使用方法,请保存为saveimg.asp   
 9'saveimg.asp?url=http://image2.sina.com.cn/home/images/sina_logo2.gif 即可以取下图片啦,HOHO. 其他需要加的功能,大家自己扩展好啦   
10'如何获取其他后缀名的文件呢? 当然也可以啦   
11'(jpg|gif|png|bmp)改成(mp3)明白吧? 就是取mp3后缀的文件名.以此类推. 嘻嘻   
12'俺要落伍. 发了二份原创,一份是惊云下载系统偷天空时防止出现连接来自天空软件站的程序,有需要的在落伍里面搜索我的贴子   
13'不要忘了使用时在目录下建images的保存目录哦   
14  
15Server.ScriptTimeOut=99999   
16  
17const savepath="images" '图片保存路径   
18url=request("url")   
19  
20  
21  
22function myreplace(str)   
23newstr=str   
24set objregEx = new RegExp   
25objregEx.IgnoreCase = true   
26objregEx.Global = true   
27objregEx.Pattern = "http://(.+?)\\.(jpg|gif|png|bmp)" '定义文件后缀   
28set matches = objregEx.execute(str)   
29for each match in matches   
30newstr=replace(newstr,match.value,saveimg(match.value))   
31next   
32myreplace=newstr   
33end function   
34  
35function saveimg(url)   
36temp=split(url,".")   
37'以下是用时间与随机数重命名文件名   
38randomize   
39ranNum=int(90000*rnd)+10000   
40filename=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&temp(ubound(temp))   
41'文件名重命名结束   
42set xmlhttp=server.createobject("Microsoft.XMLHTTP")   
43xmlhttp.open "get",url,false   
44xmlhttp.send   
45img=xmlhttp.ResponseBody   
46set xmlhttp=nothing   
47set objAdostream=server.createobject("ADODB.Stream")   
48objAdostream.Open()   
49objAdostream.type=1   
50objAdostream.Write(img)   
51objAdostream.SaveToFile(server.mappath(savepath&filename))   
52objAdostream.SetEOS   
53set objAdostream=nothing   
54'''''''222222222'''''''''''   
55saveimg=savepath&filename '获取保存路径   
56Dim Jpeg   
57Set Jpeg = Server.CreateObject("Persits.Jpeg")   
58Jpeg.Open Server.MapPath(saveimg) '打开保存图片的路径   
59  
60' 添加文字水印   
61Jpeg.Canvas.Font.Color = &HFF0000' 红色   
62Jpeg.Canvas.Font.Family = "宋体"   
63Jpeg.Canvas.Font.Bold = True   
64Jpeg.Canvas.Print Jpeg.OriginalWidth-200,Jpeg.OriginalHeight-50, "www.sina.com" '水印离左边的距离,离顶端的距离,这个是放在右下脚了   
65'保存文件   
66Jpeg.Save Server.MapPath(saveimg) '保存添加水印后的图片   
67  
68' 注销对象   
69Set Jpeg = Nothing   
70end function   
Published At
Categories with Web编程
Tagged with
comments powered by Disqus