日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ASP组件AspJpeg(加水印)

發布時間:2025/7/14 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP组件AspJpeg(加水印) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
<%
Dim Jpeg ''''//聲明變量

Set Jpeg = Server.CreateObject("Persits.Jpeg") ''''//調用組件

Jpeg.Open Server.MapPath("aaa.JPG") ''''//源圖片位置

Jpeg.Canvas.Font.Color = &H000000 ''''//水印字體顏色

Jpeg.Canvas.Font.Family = "宋體" ''''//水印字體

Jpeg.Canvas.Font.Size = 14 ''''//水印字體大小

Jpeg.Canvas.Font.Bold = False ''''//是否粗體,粗體用:True

Jpeg.Canvas.Font.BkMode = &HFFFFFF ''''//字體背景顏色

Jpeg.Canvas.Print 10, 10, "www.data-bin.cn" ''''//水印文字,兩個數字10為水印的xy座標

Jpeg.Save Server.MapPath("aaa_05.jpg") ''''//生成有水印的新圖片及保存位置

Set Jpeg = Nothing ''''//注銷組件,釋放資源

Response.Write "" ''''//在該頁顯示生成水印后的圖片
%>

二、生成縮略圖

<%
Dim Jpeg ''''//聲明變量

Set Jpeg = Server.CreateObject("Persits.Jpeg") ''''//調用組件

Jpeg.Open Server.MapPath("aaa.JPG") ''''//原圖位置

Jpeg.Width = Jpeg.OriginalWidth/4 ''''//設圖片寬度為原圖的四分之一

Jpeg.Height = Jpeg.OriginalHeight/4 ''''//設圖片高度為原圖的四分之一

Jpeg.Sharpen 1, 130 ''''//設定銳化效果

Jpeg.Save Server.MapPath("aaa_small.jpg") ''''//生成縮略圖位置及名稱

Set Jpeg = Nothing ''''//注銷組件,釋放資源

Response.Write "" ''''//在該頁顯示生成縮略圖
%>


aspjpeg組件高級使用方法介紹

aspjpeg是一款非常強大的圖片處理組件,純英文版本。不過早已經有免費版和破解版,但是對其進行詳細與深入介紹的文章卻是不多,即使有也只牽涉到圖片縮略和圖片水印。可能是因為純英文的緣故。

這里我就是針對這些問題談談aspjpeg的高級用法。這里的技術主要包括:
圖片縮略
圖片水印
安全碼技術
圖片切割
圖片合并
數據庫支持
更多不常用的方法介紹
以及相關的一些實用技術

aspjpeg唯一點不足的就是輸出方式比較單一。在這里,我們主要談將圖片處理保存后再調用的這種輸出方法。另外,本人比較懶,所以有些代碼仍然引用于原文檔,不懂的地方偶會加以解釋!

學過vb或者.net的同志肯定一看就明白了。刷子來著。呵呵。

一、圖片縮略

<%
Set Jpeg = Server.CreateObject("Persits.Jpeg") 調用組件
Path = Server.MapPath("images") & "\clock.jpg" 待處理圖片路徑
Jpeg.Open Path 打開圖片
高與寬為原圖片的1/2
Jpeg.Width = Jpeg.OriginalWidth / 2
Jpeg.Height = Jpeg.OriginalHeight / 2
保存圖片
Jpeg.Save Server.MapPath("images") & "\clock_small.jpg"
%>?
查看處理的圖片


二、圖片水印

<%
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Jpeg.Open Server.MapPath("images/dodge_viper.jpg")
開始寫文字
Jpeg.Canvas.Font.Color = &H000000'''' white 顏色
Jpeg.Canvas.Font.Family = "Courier New" 字體
Jpeg.Canvas.Font.Bold = True 是否加粗
Jpeg.Canvas.Print 10, 10, "Copyright (c) XYZ, Inc."
打印坐標x 打印坐標y 需要打印的字符
以下是對圖片進行邊框處理
Jpeg.Canvas.Pen.Color = &H000000'''' black 顏色
Jpeg.Canvas.Pen.Width = 2 畫筆寬度
Jpeg.Canvas.Brush.Solid = False 是否加粗處理
Jpeg.Canvas.Bar 1, 1, Jpeg.Width, Jpeg.Height
起始X坐標 起始Y坐標 輸入長度 輸入高度
Jpeg.Save Server.MapPath("images/dodge_viper_framed.jpg") 保存
%>

三、安全碼

安全瑪的道理和加水印差不多,很多朋友問我要具體的代碼技術,在這里我就寫出來和大家分享,一般人我還不告訴他。呵呵。

<%
生成安全碼的函數 www.wuyouw.com
function make_randomize(max_len,w_n) max_len 生成長度,w_n:0 可能包含字母,1:只為數字
randomize
for intcounter=1 to max_len
whatnext=int((1-0+1)*rnd+w_n)
if whatnext=0 then
upper=122
lower=97
else
upper=57
lower=48
end if
strnewpass=strnewpass & chr(int((upper-lower+1)*rnd)+lower)
next
make_randomize=strnewpass
end function
%>

生成安全碼的圖片。當然你要預先準備一張背景圖哦

<%random_num=make_randomize(4,1) 生成4位數字的安全碼
session("random_num")=random_num 為什么調用session,沒有session的安全碼是完全沒有意義的。呵呵

Set Jpeg = Server.CreateObject("Persits.Jpeg") 調用組件
Jpeg.Open Server.MapPath("infos/random_pic/random_index.gif") 打開準備的圖片
Jpeg.Canvas.Font.Color = &H006699
Jpeg.Canvas.Font.Family = "Arial Black"
Jpeg.Canvas.Font.Bold = false
Jpeg.Canvas.PrintText 0, -2, random_num
jpeg.save Server.MapPath("infos/random_pic/random_index.bmp") 保存
%>
?
自己做做看。呵呵。

四、圖片切割

一直以來,對aspjpeg不了解的人以為是無法用它來進行切割的。
其實有這樣的一個方法的
crop x1,y1,x2,y2
切割長方型左上角x坐標,y坐標 右下角x坐標 y坐標
下面我就做一個演示哈
Set Jpeg = Server.CreateObject("Persits.Jpeg")
jpeg.open server.MapPath("/pic/1.gif")
jpeg.width=70
Jpeg.Height = Jpeg.OriginalHeight*70 / jpeg.Originawidth
jpeg.crop 0,0,70,52 開始切割其實是把超過52象素的下部分去掉
jpeg.save server.MapPath("/temp_pic/small_1.gif") 保存
怎么樣,很簡單吧

五、圖片合并

我們這里是要把logo圖片加到dodge_viper.jpg圖片上去
其實,圖片合并的方法也可以用來動態打水印哦
Set Photo = Server.CreateObject("Persits.Jpeg")
PhotoPath = Server.MapPath("images") & "\dodge_viper.jpg"
Photo.Open PhotoPath
Set Logo = Server.CreateObject("Persits.Jpeg")
LogoPath = Server.MapPath("images") & "\clock.jpg"
Logo.Open LogoPath

Logo.Width = 70
Logo.Height = Logo.Width * Logo.OriginalHeight / Logo.OriginalWidth

Photo.DrawImage 0, 0, Logo

Photo.SendBinary 這里用了sendBinary的輸出方法。當然,你也可以先保存更改后的dodge_viper.jpg,再輸入也可以。我個人不大喜歡用sendBinary方法,在網速慢的時候容易出錯。在速度方面也不怎樣。呵呵。

六、數據庫支持

這里不多說了。其實就是Binary方法,大家知道圖片存進數據庫只能存為二進制的文件的。所以代碼就懶的寫了。


七、更多方法介紹

Canvas.Line(Left, Top, Right, Bottom)
畫一條直線
Canvas.Ellipse(Left, Top, Right, Bottom)
畫出一個橢圓
Canvas.Circle(X, Y, Radius)
畫出一個圓
Canvas.Bar(Left, Top, Right, Bottom)
畫出一個長方形,上面有代碼介紹了
Canvas.Font.ShadowColor
文字陰影顏色
Canvas.Font.ShadowXOffset As Long
陰影X坐標設定
Canvas.Font.ShadowYOffset As Long
Y坐標設定
Canvas.Font.BkMode As String
文字背景

========================================

今天給大家講的是ASP給圖片加水印的知識

ASP給圖片加水印是需要組件的...常用的有aspjpeg和中國人自己開發的wsImage...前者有30天的免費...后者完全免費...當然我們要用國人的產品了..嘿嘿..

注冊組件的方法:
命令提示符下輸入"regsvr32 [Dll路徑]" 就可以了?????????
圖片添加水印無非就是獲得圖片大小,然后把水印寫上去..ASP代碼只是起個控制組件的作用.用代碼來說明一切吧.

一:獲得圖片大小(這里是用象素值表示的.學PhotoShop的朋友都應該明白)
<%
set obj=server.CreateObject("wsImage.Resize") ''''''''調用組件
obj.LoadSoucePic server.mappath("25.jpg")?????? ''''''''打開圖片,圖片名字是25.jpg
obj.GetSourceInfo iWidth,iHeight
response.write "圖片寬度:" & iWidth & "
"????????? ''''''''獲得圖片寬度
response.write "圖片高度:" & iHeight & "
"????????? ''''''''獲得圖片高度
strError=obj.errorinfo
if strError<>"" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>

二:添加文字水印

<%
set obj=server.CreateObject("wsImage.Resize")
obj.LoadSoucePic server.mappath("25.jpg") ''''''''裝載圖片
obj.Quality=75
obj.TxtMarkFont = "華文彩云"??? ''''''''設置水印文字字體
obj.TxtMarkBond = false???????????? ''''''''設置水印文字的粗細
obj.MarkRotate = 0?????? ''''''''水印文字的旋轉角度
obj.TxtMarkHeight = 25??? ''''''''水印文字的高度
obj.AddTxtMark server.mappath("txtMark.jpg"), "帶你離境", &H00FF00&, 10, 70
strError=obj.errorinfo?????? ''''''''生成圖片名字,文字顏色即水印在圖片的位置
if strError<>"" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>

三:添加圖片水印

<%
set obj=server.CreateObject("wsImage.Resize")
obj.LoadSoucePic server.mappath("25.jpg")????????? ''''''''裝載圖片
obj.LoadImgMarkPic server.mappath("blend.bmp")??? ''''''''裝載水印圖片
obj.Quality=75
obj.AddImgMark server.mappath("imgMark.jpg"), 315, 220,&hFFFFFF, 70
strError=obj.errorinfo?????? ''''''''生成圖片名字,文字顏色即水印在圖片的位置
if strError<>"" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>

其實給圖片添加水印就這么簡單.然后我在說下WsImage.dll組件的另外兩個主要用法.包括:
剪裁圖片,生成圖片的縮略圖.
還是以我得習慣,用代碼加注釋說明:
剪裁圖片:

<%
set obj=server.CreateObject("wsImage.Resize")
obj.LoadSoucePic server.mappath("25.jpg")
obj.Quality=75
obj.cropImage server.mappath("25_crop.jpg"),100,10,200,200??? ''''''''定義裁減大小和生成圖片名字
strError=obj.errorinfo
if strError<>"" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>

詳細注釋:裁減圖片用到了WsImage的CropImage方法.其中定義生成圖片時候,100,10是左上角的裁減點,即離圖片左邊是100象素,頂端10象素.后兩個200代表的是裁減的寬帶和高和高度.

生成圖片縮略圖:

<%
set obj=server.CreateObject("wsImage.Resize")
obj.LoadSoucePic server.mappath("25.jpg")??? ''''''''加載圖片
obj.Quality=75
obj.OutputSpic server.mappath("25_s.jpg"),0.5,0.5,3??? ''''''''定義縮略圖的名字即大小
strError=obj.errorinfo
if strError<>"" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>

詳細說明:

產生縮略圖共有四種導出方式:

(1) obj.OutputSpic server.mappath("25_s.jpg"),200,150,0
200為輸出寬,150為輸出高,這種輸出形式為強制輸出寬高,可能引起圖片變形。

(2) obj.OutputSpic server.mappath("25_s.jpg"),200,0,1
以200為輸出寬,輸出高將隨比列縮放。

(3) obj.OutputSpic server.mappath("25_s.jpg"),0,200,2
以200為輸出高,輸出寬將隨比列縮放。

(4) obj.OutputSpic server.mappath("25_s.jpg"),0.5,0.5,3
第一個0.5表示生成的縮略圖是原圖寬的一半,即表示寬縮小比例。
第二個0.5表示生成的縮略圖是原圖高的一半,即表示高縮小比例。
寬高的縮小比例一致意味著將對原圖進行比例縮小。寬高的縮放比例如果大于1,則對原圖進行放大。

轉載于:https://www.cnblogs.com/Athrun/archive/2009/04/04/1429340.html

總結

以上是生活随笔為你收集整理的ASP组件AspJpeg(加水印)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 五月天av网| 久久天天躁狠狠躁夜夜av | 国产伦理片在线观看 | 国产精品久久婷婷 | 毛片成人 | 亚洲激情欧美激情 | 在线天堂6| 成人做爰100 | 女人扒开腿让男人捅爽 | 日韩av在线影院 | 黄骗免费网站 | 在线观看av的网址 | 激情啪啪网 | 污污视频在线看 | 在线看h网站 | 黄色在线一区 | 国产亚洲天堂网 | 久久艳片www.17c.com | 丁香婷婷网 | 福利视频在线导航 | av制服丝袜在线 | 色偷偷av一区二区三区 | 无码人妻丰满熟妇啪啪欧美 | 久久久久在线 | 国产区一区二区三 | 亚洲网站在线看 | 春日野结衣av | 在线免费黄色片 | 亚洲图片综合区 | 在线免费一区二区 | 少妇av一区二区三区 | 明日花绮罗高潮无打码 | 福利一区在线观看 | 假日游船 | 一区二区精品久久 | 69国产| 美女张开腿露出尿口 | 精品国产欧美一区二区三区成人 | 久久伊人爱| 97在线观看视频 | 国产成人影视 | 国产一区二区精品丝袜 | 国产的av | 成人免费性视频 | 黄色一极视频 | 国产一区二区av | 国产精品久久久久久久久久久不卡 | 国产美女主播在线 | 国产原创在线 | 理论毛片 | 亚洲九九在线 | 国产三级高清 | 欧美高h | 日本一本高清视频 | 最新中文字幕av | 国产成人免费网站 | 国产冒白浆 | 欧美偷拍少妇精品一区 | 欧美少妇xxx | 91干干干| 国产一级二级三级在线 | 国产成年人免费视频 | 18成人在线观看 | 国产高清av在线 | 我和单位漂亮少妇激情 | 午夜不卡视频 | 日本乱淫视频 | 麻豆一区二区三区精品视频 | 久久久久久久久国产精品一区 | 韩国美女视频在线观看18 | 夜夜嗨aⅴ一区二区三区 | 久久网亚洲| 宅男深夜视频 | 色播开心网 | 国产ts网站 | 小视频免费在线观看 | 国精产品一区一区三区在线 | 亚洲二区在线视频 | 成人二区三区 | 午夜私人影院 | 国产精品一区久久 | 视频二区在线 | 精品国产乱码久久久久久免费 | 国产又粗又猛又黄又爽 | 朝鲜女人性猛交 | 一级中文字幕 | 中日韩午夜理伦电影免费 | 在线观看日韩中文字幕 | 蜜臀av无码一区二区三区 | 亚洲天堂男人天堂 | 亚洲成人1区| 日本熟女一区二区 | 少妇高潮一区二区三区99小说 | 热久久这里只有精品 | 欧美日韩亚洲第一 | 大陆极品少妇内射aaaaa | 夜夜草天天草 | 日韩极品视频 | 波多野结衣黄色片 |