aspjpeg組件技術在ASP的應用實例

發布時間:2007-07-11 14:37:17   瀏覽人數: 839912 次  

可以采用ASP的組件JPEG來做,可以先做一個圖片,上面是你的網站LOGO相關的東西,然后將文字寫在上面,以下方法搜集了幾種方法,大家可以參考一下。


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 = &000000' red 顏色
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") 保存
%>


三、安全碼

安全瑪的道理和加水印差不多,很多朋友問我要具體的代碼技術,在這里和大家分享。
<%
生成安全碼的函數
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
文字背景




上一篇:虛擬主機出現500錯誤提示如何解決?
下一篇:網站訪問速度沒有以前快,什么原因?

旗下網站:耐思智慧 - 淘域網 - 我的400電話 - 中文域名:耐思尼克.cn 耐思尼克.top

耐思智慧 © 版權所有 Copyright © 2000-2025 IISP.COM,Inc. All rights reserved

備案號碼: 粵ICP備09063828號  公安備案號: 公安備案 粵公網安備 44049002000123號  域名注冊服務機構許可:粵D3.1-20240003 CN域名代理自深圳萬維網

聲明:本網站中所使用到的其他各種版權內容,包括但不限于文章、圖片、視頻、音頻、字體等內容版權歸原作者所有,如權利所有人發現,請及時告知,以便我們刪除版權內容

本站程序界面、源代碼受相關法律保護, 未經授權, 嚴禁使用; 耐思智慧 © 為我公司注冊商標, 未經授權, 嚴禁使用

法律顧問:珠海知名律師 廣東篤行律師事務所 夏天風 律師

主站蜘蛛池模板: 少妇人妻偷人精品视蜜桃| 精品国产夜色在线| 女大学生的沙龙室| 亚欧人成精品免费观看| 精品久久久无码人妻中文字幕豆芽 | 国产麻豆剧传媒精品网站| 久久久久人妻精品一区蜜桃| 污视频免费网站| 国产一区二区三区精品视频| 56prom在线精品国产| 成人做受120秒试看动态图| 亚洲av日韩av不卡在线观看| 男人桶爽女人30分钟视频动态图| 国产国产人免费人成免费视频| 99久久99久久精品免费观看| 拍拍拍无挡视频免费观看1000| 亚洲伊人久久精品影院| 痴汉の电梯在线播放| 国产午夜福利精品一区二区三区 | 91视频最新地址| 成人毛片在线播放| 亚洲V欧美V国产V在线观看| 激情综合色五月六月婷婷| 国产v亚洲v天堂a无| 亚洲sss综合天堂久久久| 天天干天天干天天干天天干天天干| 久久人人爽人人爽人人av东京热 | 91成人在线观看视频| 性感美女视频在线观看免费精品| 乱子伦xxxx| 欧美高清在线精品一区二区不卡| 午夜人妻久久久久久久久| 麻豆视频免费看| 国产综合激情在线亚洲第一页| 一本精品99久久精品77| 日本边吃奶边摸边做在线视频| 亚洲国产精品成人综合色在线婷婷| 男生和女生一起差差差很痛视频 | youjizz.com中国| 美女把尿口扒开让男人桶到出水| 国产精品亚洲综合一区在线观看|