2008年12月
123456
78910111213
14151617181920
21222324252627
28293031
日 志 标 题 点击
在WindowsXP... 7919
新浪首页全屏显示广告... 7250
PHP动态网站开发中... 8245
PHP常用的正则表达... 10007
浅谈PHP验证用户信... 11175
PHP实现翻页处理 3211
一行代码杜绝ifra... 945
用PHP4中的PDF... 1119
PHP脚本的技巧--... 891
经典正则表达式 940
ASP采集教程基础篇 957
WML语言基础(WA... 825
WML语言基础(WA... 783
WML语言基础(WA... 5566
WML语言基础(WA... 816
WML语言基础(WA... 1011
ASP组件自动生成图... 1223
将Access数据导... 2299
用ASP编程在线生成... 1330
提高IIS服务器的执... 3015
图解支持多语言环境的... 1243
从海洋说ASP木马变... 1538
ASp使用AspJp... 8915
ASP:技巧:创建网... 4236
ASP网站的漏洞分解... 4173
利用ASP代码实现对... 3459
实例:ASP实现长文... 3231
WML语言基础(WA... 2730
 
 
全部文章生活感慨科技新闻网络编程电脑故障Linux
ASp使用AspJpeg组件制作透明文字水印
[作者:admin] [来自:本站原创] [天气:阴天] [阅读:8915次]

技术支持:
   1、aspjpeg能对图片水印进行透明度调整,不能对文字水印调整,
   2、aspjpeg支持Binary,可以Jpeg.OpenBinary读取,可以Jpeg.sendBinary,也可Jpeg.Binary赋值
思路:
   1、把原始的图片数据二进制度赋值给TempA,
   2、将文字水印处理后的图片数据二进制赋值给TempB,
   3、以TempB作为"图片水印",附加在TempA上,调整透明度,输出就ok了

思路很简单,代码也很简单:

<%
LocalFile="d:\apple.jpg"
TargetFile="d:\myapple.jpg"
Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg")
If Err.Number=-2147221005 then
Response.write "没有这个组件,请安装!"'检查是否安装AspJpeg组件
Response.End()
End If
Jpeg.Open (LocalFile)'打开图片
If err.number then
Response.write"打开图片失败,请检查路径!"
Response.End()
End if
Dim TempA '原始图片的二进制数据
Dim TempB '加了不透明文字水印的图片
Dim TempC '最终效果
TempA=Jpeg.Binary'将原始数据赋给TempA
'=========加文字水印=================
Jpeg.Canvas.Font.Color = &Hfffffff'水印文字颜色
Jpeg.Canvas.Font.Family = Arial'字体
Jpeg.Canvas.Font.Bold = True'是否加粗
Jpeg.Canvas.Font.Size = 35'字体大小
Jpeg.Canvas.Font.ShadowColor = &H000000'阴影色彩
Jpeg.Canvas.Font.ShadowYOffset = 1
Jpeg.Canvas.Font.ShadowXOffset = 1
Jpeg.Canvas.Brush.Solid = True
Jpeg.Canvas.Font.Quality = 5'输出质量
Jpeg.Canvas.PrintText Jpeg.OriginalWidth/2-150,Jpeg.OriginalHeight/2,"www.Tsingfeng.com"'水印位置及文字
TempB=Jpeg.Binary'将文字水印处理后的值赋给TempB,这时,文字水印没有不透明度
'============调整文字透明度================
Set MyJpeg = Server.CreateObject("Persits.Jpeg")
MyJpeg.OpenBinary TempA
Set Logo = Server.CreateObject("Persits.Jpeg")
Logo.OpenBinary TempB
MyJpeg.DrawImage 0,0, Logo, 0.2'0.3是透明度
TempC=MyJpeg.Binary'将最终结果赋值给TempC,这时也可以生成目标图片了
response.BinaryWrite TempC'将二进输出给浏览器
MyJpeg.Save (TargetFile)
set TempA=nothing
set TempB=nothing
set TempC=nothing
Jpeg.close
MyJpeg.Close
Logo.Close
%>

 


本日志由 admin 于 2007-8-9 17:33:02 编辑
请在下面填写你的评论内容
您的大名:  验证码:  
评论内容: 评论内容支持HTML
上传图片:
相关图片: 网络图片地址
 
 
E-MAIL:shyxh123@sina.com 皖ICP备07001445号  

Copyright © 清风网络工作室 All Rights Reserved.