技術支持:
1、aspjpeg能對圖片水印進行透明度調整,不能對文字水印調整,
2、aspjpeg支持Binary,可以Jpeg.OpenBinary讀取,可以Jpeg.sendBinary,也可Jpeg.Binary賦值
思路:
1、把原始的圖片數據二進制度賦值給aa,
2、將文字水印處理后的圖片數據二進制賦值給bb,
3、以bb作為"圖片水印",附加在aa上,調整透明度,輸出就ok了
思路很簡單,代碼也很簡單:
<%
LocalFile="d:\mytest.jpg"
TargetFile="d:mytest_Text.jpg"
Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg")
If -2147221005=Err then
Response.write "沒有這個組件,請安裝!" ’檢查是否安裝AspJpeg組件
Response.End()
End If
Jpeg.Open (LocalFile) ’打開圖片
If err.number then
Response.write"打開圖片失敗,請檢查路徑!"
Response.End()
End if
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 = 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 = 4 ’ ’輸出質量
Jpeg.Canvas.PrintText Jpeg.OriginalWidth/2-100,Jpeg.OriginalHeight/2+20,"www.sotuku.com" ’水印位置及文字
bb=Jpeg.Binary ’將文字水印處理后的值賦給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是透明度
cc=MyJpeg.Binary ’將最終結果賦值給cc,這時也可以生成目標圖片了
response.BinaryWrite cc ’將二進輸出給瀏覽器
MyJpeg.Save (TargetFile)
set aa=nothing
set bb=nothing
set cc=nothing
Jpeg.close
MyJpeg.Close
Logo.Close
%>
效果圖:
from http://web008.net/ 作者:[ 傻小子靈月 ]
google_ad_client = "pub-2416224910262877"; google_ad_width = 728; google_ad_height = 90; google_ad_format = "728x90_as"; google_ad_channel = ""; google_color_border = "FFFFFF"; google_color_bg = "FFFFFF"; google_color_link = "0000FF"; google_color_text = "000000"; google_color_url = "008000";
其他文章:
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
