zblog上传图片自动添加水印的实现方法
发布:admin | 发布时间: 2012年7月14日方法很简单,直接把代码复制到相关文件即可,不过此方法需要aspjpeg组件的支持才行!
具体的方法如下:
一、打开 FUNCTION 文件夹下的 c_system_lib.asp 文件
二、在文件中搜索:UpLoad=True ,再其前面添加以下代码:
If CheckRegExp(LCase(FileName),"jpg|gif|bmp|png") Then
Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Jpeg.Open BlogPath & "/" & ZC_UPLOAD_DIRECTORY & "/" & FileName ' 图片所在位置
Dim aa
aa=Jpeg.Binary '将原始数据赋给aa
'=========加文字水印=================
Jpeg.Canvas.Font.Color = &Hfffffff '水印文字颜色
Jpeg.Canvas.Font.Family = "Arial" '字体
Jpeg.Canvas.Font.Bold = True '是否加粗
Jpeg.Canvas.Font.Size = 24 '字体大小
Jpeg.Canvas.Font.ShadowColor = &H000000 '阴影色彩
Jpeg.Canvas.Font.ShadowYOffset = 1
Jpeg.Canvas.Font.ShadowXOffset = 1
Jpeg.Canvas.Brush.Solid = True
Jpeg.Canvas.Font.Quality = 4 '输出质量
Jpeg.Canvas.PrintText Jpeg.OriginalWidth/2-100,Jpeg.OriginalHeight/2+20,"www.5iadmin.com" '水印位置及文字
bb=Jpeg.Binary '将文字水印处理后的值赋给bb,这时,文字水印没有不透明度
'============调整文字透明度================
dim MyJpeg
Dim Logo
dim bb
Set MyJpeg = Server.CreateObject("Persits.Jpeg")
MyJpeg.OpenBinary aa
Set Logo = Server.CreateObject("Persits.Jpeg")
Logo.OpenBinary bb
MyJpeg.DrawImage 0,0, Logo, 0.2 '0.3是透明度
MyJpeg.Save BlogPath & "/" & ZC_UPLOAD_DIRECTORY & "/" & FileName ' 保存文件
set aa=nothing
set bb=nothing
Jpeg.close
MyJpeg.Close
Logo.Close
END IF
因为AspJpeg组件不支持文字的透明效果,这里的思路简单的可以概括为将文字先处理成图片水印,然后与原图融合起来。
小王又做了一些修改:
If CheckRegExp(LCase(FileName),"jpg|gif|bmp|png") Then
Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Jpeg.Open BlogPath & "/" & ZC_UPLOAD_DIRECTORY & "/" & FileName ' 图片所在位置
Dim aa
aa=Jpeg.Binary '将原始数据赋给aa
'=========加文字水印=================
Jpeg.Canvas.Font.Color = &H000000 '水印文字颜色
Jpeg.Canvas.Font.Family = "Arial" '字体
Jpeg.Canvas.Font.Size = 22 '字体大小
Jpeg.Canvas.Brush.Solid = True
Jpeg.Canvas.Font.Quality = 4 '输出质量
Jpeg.Canvas.PrintText Jpeg.OriginalWidth-170,Jpeg.OriginalHeight-20,"www.5iadmin.com" '水印位置及文字
bb=Jpeg.Binary '将文字水印处理后的值赋给bb,这时,文字水印没有不透明度
'============调整文字透明度================
dim MyJpeg
Dim Logo
dim bb
Set MyJpeg = Server.CreateObject("Persits.Jpeg")
MyJpeg.OpenBinary aa
Set Logo = Server.CreateObject("Persits.Jpeg")
Logo.OpenBinary bb
MyJpeg.DrawImage 0,0, Logo, 1 '0.3是透明度
MyJpeg.Save BlogPath & "/" & ZC_UPLOAD_DIRECTORY & "/" & FileName ' 保存文件
set aa=nothing
set bb=nothing
Jpeg.close
MyJpeg.Close
Logo.Close
END IF
文章如转载,请注明转载自:http://www.5iadmin.com/post/1013.html
- 相关文章:
解决Zblog的Active Server Pages ?펳 'ASP 0113' (2010-9-19 16:15:40)
用IIS搭建本地Z-Blog (2010-5-24 12:35:54)
zblog防复制 加版权信息和文章链接方法 (2010-4-25 16:48:17)
Zblog主题文章没有"上一篇"和"下一篇"连接的解决方法 (2010-4-25 9:57:14)
在ZBlog的Qeeke主题做文章围绕广告 (2010-4-23 9:19:32)
ZBlog加广告代码技巧收集 (2010-4-22 15:59:20)
写在开博第三个月 (2010-4-15 8:2:5)
wordpress与zblog比较 (2010-4-12 15:44:8)
在zblog加广告的方法 (2010-2-25 15:53:44)
zblog的qeeke模板删除网站地图的方法 (2010-2-19 10:26:24)
发表评论
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。