函数功能:远程图片自动保存到本地服务器,并利用aspjpeg为图片加上水印 程序落伍者:我是星星 代码: <% '函数功能:远程图片自动保存到本地服务器,并利用aspjpeg为图片加上水印 '程序落伍者:我是星星 '本程序加水印功能需要在服务器上安装'aspjpeg组件'否则无法正常使用 '也可以只取'''''22222222'''''''以上的部分,这部分可以保存图片,第二部分是进行水印增加'请先在目录下创建images目录,用来保存临时图片 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 = '<a href='http://(.+?)\.(jpg|gif|png|bmp)' ' target='_blank'>http://(.+?)\.(jpg|gif|png|bmp)' </a>'定义文件后缀 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 %>