Sapere la dimensione in punti di un'immagine

di Stefano Scardovi, in Classic ASP, Misc, Coding,

Questo script può essere utile per sapere la dimensione di un'immagine, in punti.

Basta seguire le istruzioni dello script.

<%
' ImageSize by Stefano Scardovi
' AKA Free.9 mailto:mille9cento@tamtamitalia.com
' Copyright 2000
' Last update 2000/05/26 - 16.45 CST
'
' Parametri richiesti:
'  Immagine = Percorso del file immagine da esaminare
'
' Parametri restituiti:
'   Array di 2 valori
'  Valore 0 = Dimensione X (orizzontale)
'  Valore 1 = Dimensione Y (verticale)
'
' Esempio:
'  Immagine="/images/prova.jpg"
'  Dimensione = ImageSize(immagine)
'  Response.Write("La tua immagine ha " & Dimensione(0) & " punti di larghezza e ")
'  Response.Write(Dimensione(1) & " punti di altezza.")

Dim Dimensione

Function ImageSize(immagine)
 Dimensione = Array("","")
 Formato = Right(uCase(immagine), 3)
 Select Case Formato
  Case "JPG"
   Start = 167
   max = 4
   xs = 3
   xe = 4
   ys = 1
   ye = 2
  Case "PNG"
   Start = 24
   max = 8
   xs = 3
   xe = 4
   ys = 7
   ye = 8
  Case "GIF"
   Start = 10
   max = 4
   xs = 2
   xe = 1
   ys = 4
   ye = 3
  Case "BMP"
   Start = 24
   max = 8
   xs = 4
   xe = 3
   ys = 8
   ye = 7
  Case "WMF"
   Start = 14
   max = 4
   xs = 2
   xe = 1
   ys = 4
   ye = 3
 End Select

 Set fso = CreateObject("Scripting.FileSystemObject")
 Set ts = fso.OpenTextFile(Server.MapPath(immagine), 1)
 s = Right(ts.Read(Start), max)
 Dimensione(0) = HexToDec(HexAt(s,xs) & HexAt(s,xe))
 Dimensione(1) = HexToDec(HexAt(s,ys) & HexAt(s,ye))
 ts.Close
 ImageSize = Dimensione
End Function

Function HexAt(s, n)
 HexAt = Hex(Asc(Mid(s, n, 1)))
 If Len(HexAt) = 1 Then HexAt = "0" & HexAt
End Function


Function HexToDec(cadhex)
 Dim n, i, ch, decimal
 decimal = 0
 n = Len(cadhex)
 For i=1 To n
  decimal = decimal * 16
  ch = Mid(cadhex, i, 1)
  decimal = decimal + inStr("0123456789ABCDEFabcdef", ch) - 1
 Next
 HexToDec = decimal
End Function
%>

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

Nessuna risorsa collegata

I più letti di oggi