月光博客

青青子衿, 悠悠我心, 但为君故, 沉吟至今

« FeedBurner出现乱码错误深圳欢乐谷游记 »

使用ASPJPEG添加水印的方法

  这些天研究了一下ASP的自动添加图片水印的方法。

  因为原先我的图片总是被盗链,因此我使用程序将图片增加了水印,然而我查看了一下昨天和今天的网站日志记录,发现我的图片依旧被盗链严重。

  两天的时间,我的博客就有20多G的访问流量,图片所在的目录upload占用了18.6G,37万次点击,而文章所在目录只用了1.3G流量,4万次点击,从来源看,以大站盗链的图片所占流量最大,CSDN和BOKEE占前两位,这两个地址一共带来4万多次盗链。

  当然,如果彻底防止盗链,我以前也想过使用类似ISAPI Rewrite的程序来实现,但实际使用后,我发现ISAPI Rewrite将所有的外部链接全部都禁止了,但是我并不想禁用全部外部链接,因此还是最终没有使用,不过如果现在这种盗链情况继续进行的话,我不得不考虑重新启用ISAPI Rewrite这个程序了。

  下面是我使用程序来增加水印的方法,虽然以我目前的使用效果看,是比较失败的案例。

  增加水印使用的是一个名叫ASPJPEG的ASP组件,我是在OBlog的网站上下载的,版本是1.5版本,使用这个图象处理组件,可以轻松地做出图片的缩略图和为图片加上水印功能。下面简单介绍一下使用方法:

  先要到Oblog的下载页面上,在“OBLOG相关组件下载”处,下载AspJpeg v1.5.0.0,然后执行下载得到的文件,安装该组件。

  然后在ASP代码里增加一点点代码即可,增加的位置可以放在上传图片完成后,取得图片地址,进行修改。对于Z-Blog的使用者,直接将下面代码复制到c_system_lib.asp文件的TUpLoadFile类中的Upload函数的结尾即可实现水印功能。

  1、为图片加入水印功能

Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg")  ' 建立对象
Jpeg.Open BlogPath & "/upload/" & FileName  ' 图片所在位置
Jpeg.Canvas.Font.Color = &H000000 ' 颜色,这里是设置成:黑
Jpeg.Canvas.Font.Family = "方正隶变简体"  ' 设置字体
Jpeg.Canvas.Font.Bold = False '是否设置成粗体
Jpeg.Canvas.Font.Size = 26 '字体大小
Jpeg.Canvas.Font.Quality = 4 ' 文字清晰度
Jpeg.Canvas.Print Jpeg.OriginalWidth/2-170,Jpeg.OriginalHeight-30, "WWW.WILLIAMLONG.INFO"   '水印文字
Jpeg.Save BlogPath & "/upload/" & FileName  ' 保存文件
Set Jpeg = Nothing

  2、为图片制作缩略图

Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg")  ' 建立对象
Jpeg.Open BlogPath & "/upload/" & FileName  ' 图片所在位置
Jpeg.Width = Jpeg.OriginalWidth / 2
Jpeg.Height = Jpeg.OriginalHeight / 2
' 设置缩略图大小(这里比例设定为50%),也可以给他准确的数值,比如Jpeg.Width=120
Jpeg.Save BlogPath & "/upload/" & FileName  ' 保存文件
Set Jpeg = Nothing



原创文章如转载,请注明:转载自月光博客 [ http://www.williamlong.info/ ]

本文链接地址:http://www.williamlong.info/archives/539.html
  • 文章排行:
  • Blog的“人身安全”(引用)
  • Dgwxx 的猫窝
  • 今天晚上闲着没事,又修改了一下Waki-Blog。本次修改主旨在于提高前台程序的执行效率。首先分离了前台和后台的语言包文件,为Waki-Blog的前台远比后台来的简单,所以需要的语言包的数量比较少,为前台专门做一个语言包可以快前台的程序载速度。由于Waki-Blog程序结构的原,PHP代与语言、模板完全分离(PHP代中看不到一个字、一点HTML代,当然,BBCDOE解析除外),所以程序更依赖于语言包和模板,要提高效率,只要从语言包和模板入手即可。此外还调整了用户身份验证部分。只在后台的时候才验证...
  • 2006-6-22 20:58:58
  • 8.yru
  • 怎么没效果呢,我的空间只是aspjpeg1.3,照楼主修改后没水印。

    另外楼主能不能详细说一下到底加在哪段代码后面
  • 2006-8-5 17:56:14
  • 11.tanguan
  • 高不了插件楼主也搞一个改好的文件发出来吧,有人成功了吗?

    1.6的怎么改? 1.5的又怎么改? 发个文件供下载比说什么都强啊
  • 2006-8-6 8:37:57
  • 13.feisha102
  • 请问如何使用和注册该组件,我用的是windows2003 ,vs.net 2003 ,dreamwaver,现在要asp中使用该组件:我下载的1.5安装后
    已将AspJpeg.dll 分别拷贝到windows ,system/以及system32 下
    注册:
    在开始-->运行:regsvr32 aspjpeg.dll

    提示成功,但是asp创建出错,<%Dim Jpeg
    Set Jpeg = Server.CreateObject("Persits.Jpeg")%>
    补充一点下面的代码能成功:
    <%Dim fso
    Set fso = Server.CreateObject("Scripting.FileSystemObject")%>
  • 2007-1-14 13:51:09
  • 17.ASP
  • http://www.hostdiy.org
  • 经过我的测试发现月光的程序好像有问题,我把生成缩略图的文件简单的给改了一下就可以了。

    Set Jpeg = Server.CreateObject("Persits.Jpeg") '创建实例
    Path = Server.MapPath(BlogPath & "/upload/" & FileName) '处理图片路径
    Jpeg.Open Path '打开图片
    '调整宽度和高度为原来的50%
    Jpeg.Width = Jpeg.OriginalWidth / 2
    Jpeg.Height = Jpeg.OriginalHeight / 2
    Jpeg.Save Server.MapPath(BlogPath & "/upload/" & FileName) '保存图片到磁盘
    Jpeg.Close:Set Jpeg = Nothing
  • 2008-3-3 9:34:56

发表评论:

◎声明:转载本文时请务必以超链接形式标明文章原始出处和作者,本文严禁商业网站转载。

订阅博客

  • 订阅我的博客:订阅我的博客
  • 通过Google订阅本站
  • 通过鲜果订阅本站
  • 通过抓虾订阅本站
  • 通过电子邮件订阅本站

站内搜索


热文排行

最新评论

最近发表

本站采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循“署名-非商业用途-保持一致”的创作共用协议.

This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.