Aquí hay un componente que te puede servir
http://www.serverobjects.com/products.htm#free
Es imagesize, yo creé una subrutina que te permite mostrar una imagen proporcionalmente de acuerdo a los valores que te regresa una llamda a este componente, la verdad nunca lo probé muy bien, así que es alfa ja ja, a ver si te sirve de algo...te devuelve el ancho y el alto, para ponerlo en el tag <image>
<%
Dim Img
sub CheckFile (strFileName)
'Response.Write(strFileName)
'Response.End
set Img = Server.CreateObject ("ImgSize.Check")
Img.FileName = strFileName
'Asigna el valor máximo para el ancho
max_width= 120
'Asigna el valor máximo para el alto
max_height= 100
'Recoge el valor del ancho de la imagen
this_width= Img.Width
'Recoge el valor del alto de la imagen
this_height= Img.Height
'Si el tamaño real es mayor o igual que el permitido
If this_width => max_width Then
'Toma el factor para el ancho de la imagen,
'si el valor real de la imagen es mayor que el ancho máximo
'regresa un número decimal
width_factor= max_width/this_width
width_factor= width_factor * max_width
'Si no es mayor entonces el factor tiene que ser sacado al revés
Else
width_factor= this_width/max_width
width_factor= width_factor * max_width
End If
'Lo mismo por acá
If this_height => max_height Then
'Toma el factor para el alto de la imagen,
'si el valor real de la imagen es mayor que el alto máximo
'regresa un número decimal
height_factor= max_height/this_height
height_factor= height_factor * max_height
Else
height_factor= this_height/max_height
height_factor= height_factor * max_height
End If
'Dimensionamos dos variables, my_adjust(ment) je je,
'para multiplicar el factor por 1 e incrementarlo poco a poco
my_adjust= 1
'temp va a evaluar que el resultado de la multiplicación sea
'menor que el máximo, esto para limitar el tamaño de la imagen
temp=0
temp2=0
total_factor= width_factor/height_factor
'Aquí está el chiste de todo...
'Mientras que temp sea menor que el ancho máximo
While not temp > max_width AND NOT temp_2 > max_height AND NOT total_factor < total_factor2
'Multiplicamos el factor por el ajuste
temp= width_factor * my_adjust
temp2= height_factor * my_adjust
'Incrementamos poco a poco este ajuste para acercarnos
'lo más posible al máximo
my_adjust = my_adjust + 0.01
'Si temp es menor que el ancho máximo
If temp < max_width Then
'El factor cambia a lo que traiga temp
width_factor= temp
End If
If temp2 < max_height Then
height_factor= temp2
End If
'Da vuelta y volvemos a empezar
total_factor2= width_factor/height_factor
Wend
'Imprimimos los valores que siempre serán un poco menores que el ancho
'y alto máximo
Response.Write("width= " & width_factor & " " & "height=" & height_factor & " ")
set Img = nothing
end sub
%>
Salu2,