图片自动保存到本地并利用aspjpeg为图片加水印

王朝asp·作者佚名  2006-11-24
宽屏版  字体: |||超大  

<%

'函数功能:远程图片自动保存到本地服务器,并利用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

%>

注意你的服务器组件支持哦.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有