e股脑电脑教程网
  • 首 页
  • 操作系统
  • 应用软件
  • 下载工具
  • 影音视频
  • 办公软件
  • 媒体制作
  • 网站建设
  • 平面设计
  • 数据库
  • 程序开发
  • 视频教程
编辑推荐: | 文章搜索:
您现在的位置: e股脑 >> 程序开发 >> ASP教程 >> 按比例缩小图片(无组件) >> 教程正文
 
教程搜索
 
 
相关教程
  • JS+ASP打造无刷新新闻列表
  • 在VisualJ++中编写ASPCOM组件
  • ADOAPI参考(DataControl对象&Data
  • ADOAPI参考(DataSpace对象&Error对
  • ADOAPI参考(Parameter对象&Proper
  • ADOAPI参考(ADO集合)
  • ADOAPI参考(ADO方法)之二
  • ADOAPI参考(ADO方法)之一
  • ADOAPI参考(ADO方法)之四
  • ADOAPI参考(ADO方法)之三
  • ADOAPI参考(ADO方法)之五
  • ADOAPI参考(ADO动态属性)
  • ADOAPI参考(ADO属性)
  • 利用W3JMAIL组件收POP3邮件
  • 调试asp的组件时,不需重启机器的方法
  • 给你的FileSystemObject对象加把锁
 
 

图文教程


  • Windows抢了谁的饭碗 非主流操作系统To

  • 地球还是火星 平常心看“非主流”

  • 综合运用Office 2007批量制作奖状

  • 没有系统盘如何才能修复受损系统?

  • 巧妙运用Excel中边界的附加功能!
 
 
赞 助 商
 
 
按比例缩小图片(无组件)
  • 来源:e股脑
  • 点击次数:
  • 更新时间:2007-8-9

<%

Class possible

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)

dim ret

ret = ""

while(num>=base)

ret = (num mod base) & ret

num = (num - num mod base)/base

wend

Num2Str = right(string(lens,"0") & num & ret,lens)

End Function

Private Function Str2Num(str,base)

dim ret

ret = 0

for i=1 to len(str)

ret = ret *base + cint(mid(str,i,1))

next

Str2Num=ret

End Function

Private Function BinVal(bin)

dim ret

ret = 0

for i = lenb(bin) to 1 step -1

ret = ret *256 + ascb(midb(bin,i,1))

next

BinVal=ret

End Function

Private Function BinVal2(bin)

dim ret

ret = 0

for i = 1 to lenb(bin)


ret = ret *256 + ascb(midb(bin,i,1))

next

BinVal2=ret

End Function

Private Function getImageSize(filespec)

dim ret(3)

aso.LoadFromFile(filespec)

bFlag=aso.read(3)

select case hex(binVal(bFlag))

case "4E5089":

aso.read(15)

ret(0)="PNG"

ret(1)=BinVal2(aso.read(2))

aso.read(2)

ret(2)=BinVal2(aso.read(2))

case "464947":

aso.read(3)

ret(0)="GIF"

ret(1)=BinVal(aso.read(2))

ret(2)=BinVal(aso.read(2))

case "535746":

aso.read(5)

binData=aso.Read(1)

sConv=Num2Str(ascb(binData),2 ,8)

nBits=Str2Num(left(sConv,5),2)

sConv=mid(sConv,6)

while(len(sConv)<nBits*4)

binData=aso.Read(1)

sConv=sConv&Num2Str(ascb(binData),2 ,8)

wend

ret(0)="SWF"

ret(1)=int(abs(Str2Num(mid(sConv,1*nBits+1,nBits),2)-Str2Num(mid(sConv,0*nBits+1,nBits),2))/20)

ret(2)=int(abs(Str2Num(mid(sConv,3*nBits+1,nBits),2)-Str2Num(mid(sConv,2*nBits+1,nBits),2))/20)

case "FFD8FF":

do

do: p1=binVal(aso.Read(1)): loop while p1=255 and not aso.EOS

if p1>191 and p1<196 then exit do else aso.read(binval2(aso.Read(2))-2)

do:p1=binVal(aso.Read(1)):loop while p1<255 and not aso.EOS

loop while true

aso.Read(3)


ret(0)="JPG"

ret(2)=binval2(aso.Read(2))

ret(1)=binval2(aso.Read(2))

case else:

if left(Bin2Str(bFlag),2)="BM" then

aso.Read(15)

ret(0)="BMP"

ret(1)=binval(aso.Read(4))

ret(2)=binval(aso.Read(4))

else

ret(0)=""

end if

end select

ret(3)="width=""" & ret(1) &""" height=""" & ret(2) &""""

getimagesize=ret

End Function

Function readX(pic_path)

Set fso1 = server.CreateObject("Scripting.FileSystemObject")

Set f1 = fso1.GetFile(pic_path)

ext=fso1.GetExtensionName(pic_path)

select case ext

case "gif","bmp","jpg","png":

arr=getImageSize(f1.path)

Response.Write arr(1)

case "swf"

arr=pp.getimagesize(f1.path)

Response.Write arr(1)

end select

Set f1=nothing

Set fso1=nothing

End Function

Function readY(pic_path)

Set fso1 = server.CreateObject("Scripting.FileSystemObject")

Set f1 = fso1.GetFile(pic_path)

ext=fso1.GetExtensionName(pic_path)

select case ext

case "gif","bmp","jpg","png":

arr=getImageSize(f1.path)

Response.Write arr(2)


case "swf"

arr=pp.getimagesize(f1.path)

Respo

1 2 下一页
  • 上一篇教程: 如何获取设置图片大小
  • 下一篇教程: 网站开发规范及流程v1.0
  •  

    关于本站 | 广告联系 | 版权声明 | 使用帮助

    Copyright © 2004-2008 www.egunao.com All rights reserved.