欢迎光临
我们一直在努力

利用ASP获得图象的实际尺寸的示例

建站超值云服务器,限时71元/月

<!–#include virtual="/learn/test/lib_graphicdetect.asp"–>
<html><head>
<title>dbtable.asp</title>
</head>
<body bgcolor="#ffffff">
<%
   graphic="images/learnaspiconmain.gif"
   hw = readimg(graphic)
   response.write graphic & " dimensions: " & hw(0) & "x" & hw(1) & "<br>"
   response.write "<img src=""/" & graphic & """"
   response.write height=""" & hw(0) & """
   response.write width=""" & hw(0) & "">"
%>
</body></html>

the library that is included is:

<%
dim hw

function ascat(s, n)
       ascat = asc(mid(s, n, 1))
end function

function hexat(s, n)
       hexat = hex(ascat(s, n))
end function

function isjpg(fichero)
       if instr(ucase(fichero), ".jpg") <> 0 then
       isjpg = true
       else
       isjpg = false
       end if
end function

function ispng(fichero)
       if instr(ucase(fichero), ".png") <> 0 then
       ispng = true
       else
       ispng = false
       end if
end function

function isgif(fichero)
       if instr(ucase(fichero), ".gif") <> 0 then
       isgif = true
       else
       isgif = false
       end if
end function

function isbmp(fichero)
       if instr(ucase(fichero), ".bmp") <> 0 then
       isbmp = true
       else
       isbmp = false
       end if
end function

function iswmf(fichero)
       if instr(ucase(fichero), ".wmf") <> 0 then
       iswmf = true
       else
       iswmf = false
       end if
end function

function iswebimg(f)
       if isgif(f) or isjpg(f) or ispng(f) or isbmp(f) or iswmf(f) then
       iswebimg = true
       else
       iswebimg = true
       end if
end function

function readimg(fichero)
       if isgif(fichero) then
       readimg = readgif(fichero)
       else
       if isjpg(fichero) then
       readimg = readjpg(fichero)
       else
       if ispng(fichero) then
       readimg = readpng(fichero)
       else
       if isbmp(fichero) then
       readimg = readpng(fichero)
       else
       if iswmf(fichero) then
       readimg = readwmf(fichero)
       else
       readimg = array(0,0)
       end if
       end if
       end if
       end if
       end if
end function

function readjpg(fichero)
    dim fso, ts, s, hw, nbytes
       hw = array("","")
       set fso = createobject("scripting.filesystemobject")
       set ts = fso.opentextfile(server.mappath("/" & fichero), 1)
       s = right(ts.read(167), 4)
       hw(0) = hextodec(hexat(s,3) & hexat(s,4))
       hw(1) = hextodec(hexat(s,1) & hexat(s,2))
       ts.close
    readjpg = hw
end function

function readpng(fichero)
    dim fso, ts, s, hw, nbytes
       hw = array("","")
       set fso = createobject("scripting.filesystemobject")
       set ts = fso.opentextfile(server.mappath("/" & fichero), 1)
       s = right(ts.read(24), 8)
       hw(0) = hextodec(hexat(s,3) & hexat(s,4))
       hw(1) = hextodec(hexat(s,7) & hexat(s,8))
       ts.close
    readpng = hw
end function

function readgif(fichero)
    dim fso, ts, s, hw, nbytes
       hw = array("","")
       set fso = createobject("scripting.filesystemobject")
       set ts = fso.opentextfile(server.mappath("/" & fichero), 1)
       s = right(ts.read(10), 4)
       hw(0) = hextodec(hexat(s,2) & hexat(s,1))
       hw(1) = hextodec(hexat(s,4) & hexat(s,3))
       ts.close
    readgif = hw
end function

function readwmf(fichero)
    dim fso, ts, s, hw, nbytes
       hw = array("","")
       set fso = createobject("scripting.filesystemobject")
       set ts = fso.opentextfile(server.mappath("/" & fichero), 1)
       s = right(ts.read(14), 4)
       hw(0) = hextodec(hexat(s,2) & hexat(s,1))
       hw(1) = hextodec(hexat(s,4) & hexat(s,3))
       ts.close
    readwmf = hw
end function

function readbmp(fichero)
    dim fso, ts, s, hw, nbytes
       hw = array("","")
       set fso = createobject("scripting.filesystemobject")
       set ts = fso.opentextfile(server.mappath("/" & fichero), 1)
       s = right(ts.read(24), 8)
       hw(0) = hextodec(hexat(s,4) & hexat(s,3))
       hw(1) = hextodec(hexat(s,8) & hexat(s,7))
       ts.close
    readbmp = hw
end function

function isdigit(c)
       if instr("0123456789", c) <> 0 then
       isdigit = true
       else
       isdigit = false
       end if
end function

function ishex(c)
       if instr("0123456789abcdefabcdef", c) <> 0 then
       ishex = true
       else
       ishex = false
       end if
end function

function hextodec(cadhex)
       dim n, i, ch, decimal
       decimal = 0
       n = len(cadhex)
       for i=1 to n
       ch = mid(cadhex, i, 1)
       if ishex(ch) then
       decimal = decimal * 16
       if isdigit(c) then
       decimal = decimal + ch
       else
       decimal = decimal + asc(ucase(ch)) – asc("a")
       end if
       else
       hextodec = -1
       end if
       next
       hextodec = decimal
end function
%>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 利用ASP获得图象的实际尺寸的示例
分享到: 更多 (0)