我的ASP之旅—無組件產生縮圖

來源:互聯網
上載者:User
網上有不少產生縮圖的ASP組件。若你的虛擬空間不支援註冊新組件,可能會感覺自己的網站失色不少。心晴不才,結合網上資源寫了個無組件產生縮圖程式,僅供參考。
         還是先看看基礎部分吧。首先,我們知道在頁面中顯示圖片是如下代碼:
         <img src="pic.gif" border="0" width="300" height="260">
      src是圖片路徑,border控製圖片邊緣寬度,width是圖片的長度,height是圖片的高度。縮圖的產生其實就是在原始大小上縮放。但一般為了盡量少失真,我們都會按比例縮放。於是,擷取圖片的長寬尺寸也就成了產生縮圖的重點。
下面便是編寫無組件產生縮圖的步驟:
1.無組件擷取圖片大小
         以前剛學ASP不久時看到過一篇利用ASCII碼實現無組件擷取圖片尺寸的文章。後來試了試,發現在擷取jpg類圖片尺寸時總是不能正確顯示,在網上查了查,居然有不少網站轉載這個程式,但沒有一家指出此程式的缺陷,也就更談不上解決缺陷的辦法了。後來又google了一下,終於找到了一篇介紹利用ADODB.stream擷取圖片尺寸的文章,按其介紹的方法,修改裡面的代碼試了試,效果真的還不錯,現在將其拿出來與大家分享:
利用ADODB.stream擷取圖片尺寸的通用類
<%
'//////////// GPS:Get Picture Size //////////////
'//////////////利用ADODB.stream擷取圖片尺寸//////////////
'/////////Cited By Leon(心晴) 2005年8月11日//////////
Class GPS
Dim aso
Private Sub Class_Initialize
Set aso=CreateObject("Adodb.Stream")
aso.Mode=3
aso.Type=1
aso.Open
End Sub
Private Sub Class_Terminate
set aso=nothing
End Sub
Private Function Bin2Str(Bin)
Dim I, Str
For I=1 to LenB(Bin)
clow=MidB(Bin,I,1)
if AscB(clow)<128 then
Str = Str & Chr(ASCB(clow))
Else
I=I+1
if I <= LenB(Bin) then Str = Str & Chr(ASCW(MidB(Bin,I,1)&clow))
end If
Next
Bin2Str = Str
End Function
Private Function Num2Str(num,base,lens)
'GPS (2005-8-11)
dim ret

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.