通用 图片/文字 水印函数

<%
Call CreateView("UploadFile/f.jpg","1")
'CreateView(原图路径,文字/图象水印)
'----------------------------------
'创建预览图片及打水印:call CreateView(文件的路径,要添加的水印图片文件)
'Design by Seven (See7di@Gmail.com)(www.7di.net
Sub CreateView(imagename,inttype)
Dim Object,objFont,img,Obj,LogoPath,sWidth,sHeight
img = "/a.jpg"'//LOGO文件
sWidth = "147"'//LOGO的宽
sHeight = "52"'//LOGO的高
LogoPath = Server.MapPath(img)'//LOGO路径
Set Obj = Server.CreateObject("Persits.Jpeg")'//建立LOGO对象
Set Object = Server.CreateObject("Persits.Jpeg")'//建立原图对象
On Error resume Next
Obj.Open LogoPath'//读取LOGO
If err>0 Then
Response.Write ("对不起,获取LOGO图片文件失败!")
Response.End()
End if
Object.Open Trim(Server.MapPath(imagename))'//读取原图
If err>0 Then
Response.Write ("对不起,获取需要处理的图片文件失败!")
Response.End()
End if
 Obj.Width = sWidth'//加入图片的原宽度
 Obj.Height = sHeight'//加入图片的原高度
 
 '\\如果原图比LOGO大
 If Object.width>Cint(Obj.Width) and Object.Height>Cint(Obj.Height) Then
strDo="yes"
 End if
If inttype=1 Then
Object.Canvas.Font.Color = &HFF0000'//文字的颜色
Object.Canvas.Font.Family = "Verdana"'//文字的字体
Object.Canvas.Font.Bold = True'//是否加粗
Object.Canvas.Print 10, 10, "www.Sditi.com"'//打印坐标x 打印坐标y 需要打印的字符
Object.Canvas.Pen.Color = &H000000'//背景颜色 
Object.Canvas.Pen.Width = 1'//画笔宽度
Object.Canvas.Brush.Solid = False'//是否加粗处理
Object.Canvas.Bar 0, 0, Object.Width, Object.Height'//起始X坐标 起始Y坐标 输入长度 输入高度
Else
If strDo="yes" Then
Object.Canvas.Pen.Color  = &HFFFFFF'// 边框的颜色
Object.Canvas.Pen.Width  = 0'// 边框的粗细
Object.Canvas.Brush.Solid = false'// 图片边框内是否填充颜色
Object.DrawImage Object.Width/2, Object.Height/2, Obj, 0.7, &HFFFFFF,90 '// 加入图片的位置以及坐标,透明度(添加水印图片)
Object.Canvas.Bar 0, 0, Object.Width, Object.Height'// 图片边框线的位置坐标
Object.Width = Object.Width
Object.height = Object.height
Object.Sharpen 1, 120
End if
End If
Object.Save Server.MapPath(imagename)'// 生成文件
Set Obj=Nothing
End Sub
%>
posted @ 2006-11-07 21:00  已經停更  阅读(197)  评论(0编辑  收藏  举报