【 tulaoshi.com - Web开发 】
                             
                            % 
'函数功能:远程图片自动保存到本地服务器,并利用aspjpeg为图片加上水印 
'(注意:请先在目录下创建images目录,用来保存临时图片) 
'本程序需要在服务器上安装"aspjpeg组件"否则无法正常使用 
'也可以只取'''''22222222'''''''以上的部分,这部分可以保存图片,第二部分是进行水印增加 
'使用方法,请保存为saveimg.asp 
'saveimg.asp?url=http://siyizhu.com/logo.gif 即可以取下图片啦,HOHO. 其他需要加的功能,大家自己扩展好啦 
'如何获取其他后缀名的文件呢? 当然也可以啦 
'(jpg|gif|png|bmp)改成(mp3)明白吧? 就是取mp3后缀的文件名.以此类推. 嘻嘻 
Server.ScriptTimeOut=99999 
const savepath="images" '图片保存路径 
url=request("url") 
function myreplace(str) 
newstr=str 
set objregEx = new RegExp 
objregEx.IgnoreCase = true 
objregEx.Global = true 
objregEx.Pattern = "http://(.+?).(jpg|gif|png|bmp)" '定义文件后缀 
set matches = objregEx.execute(str) 
for each match in matches 
newstr=replace(newstr,match.value,saveimg(match.value)) 
next 
myreplace=newstr 
end function 
function saveimg(url) 
temp=split(url,".") 
'以下是用时间与随机数重命名文件名 
randomize 
ranNum=int(90000*rnd)+10000 
filename=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&temp(ubound(temp)) 
'文件名重命名结束 
set xmlhttp=server.createobject("Microsoft.XMLHTTP") 
xmlhttp.open "get",url,false 
xmlhttp.send 
img=xmlhttp.ResponseBody 
set xmlhttp=nothing 
set objAdostream=server.createobject("ADODB.Stream") 
objAdostream.Open() 
objAdostream.type=1 
objAdostream.Write(img) 
objAdostream.SaveToFile(server.mappath(savepath&filename)) 
objAdostream.SetEOS 
set objAdostream=nothing 
'''''''222222222''''''''''' 
saveimg=savepath&filename '获取保存路径 
Dim Jpeg 
Set Jpeg = Server.CreateObject("Persits.Jpeg") 
Jpeg.Open Server.MapPath(saveimg) '打开保存图片的路径 
' 添加文字水印 
Jpeg.Canvas.Font.Color = &HFF0000' 红色 
Jpeg.Canvas.Font.Family = "宋体" 
Jpeg.Canvas.Font.Bold = True  
Jpeg.Canvas.Print Jpeg.OriginalWidth-200,Jpeg.OriginalHeight-50, "siyizhu.com" '水印离左边的距离,离顶端的距离,这个是放在右下脚了 
'保存文件 
Jpeg.Save Server.MapPath(saveimg) '保存添加水印后的图片 
' 注销对象 
Set Jpeg = Nothing 
end function 
% 
注意你的服务器组件支持哦.