1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

远程图片自动保存到本地服务器

本帖由 小叶2006-01-26 发布。版面名称:主机讨论

  1. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    函数功能:远程图片自动保存到本地服务器,并利用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
    %>
    
    
     
  2. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    两个都差不多。
     
  3. 流氓兔

    流氓兔 New Member

    注册:
    2005-09-27
    帖子:
    905
    赞:
    3
    看不懂555555555555555555
     
  4. Sunya

    Sunya Member

    注册:
    2005-09-09
    帖子:
    954
    赞:
    1
    做图片站的好东西!
     
  5. wm_chief

    wm_chief New Member

    注册:
    2005-09-05
    帖子:
    17,890
    赞:
    46
    哦,有漏洞。不适合所有格式
     
  6. loveuni

    loveuni New Member

    注册:
    2006-02-06
    帖子:
    11
    赞:
    0
    值得好好看看了