Hay muchos componentes ASP que generan miniaturas en Internet. Si su espacio virtual no admite registrar nuevos componentes, puede sentir que su sitio web está perdiendo su color. Xinqing no tiene talento y combinada con los recursos en línea, escribió un programa de miniatura sin componentes solo para referencia.
Echemos un vistazo a lo básico primero. En primer lugar, sabemos que el siguiente código se muestra en la página:
<imgsrc = "pic.gif" border = "0" width = "300" altura = "260">
SRC es la ruta de la imagen, el borde controla el ancho del borde de la imagen, el ancho es la longitud de la imagen y la altura es la altura de la imagen. La generación de miniaturas en realidad está ampliando el tamaño original. Pero en general, para minimizar la distorsión, escalaremos a escala. Por lo tanto, obtener la longitud y el ancho de la imagen se convierte en el foco de la generación de miniaturas.
Estos son los pasos para escribir una miniatura sin componentes:
1. Obtenga el tamaño de la imagen sin componentes
Vi un artículo usando código ASCII para obtener tamaños de imagen sin componentes cuando aprendí ASP por primera vez. Más tarde lo probé y descubrí que cuando obtuve el tamaño de las imágenes similares a JPG, lo revisé en línea y descubrí que muchos sitios web reimpreso este programa, pero ninguno de ellos señaló los defectos de este programa, y mucho menos la solución a los defectos. Más tarde fui Google y finalmente encontré un artículo que introdujo el uso de ADODB.stream para obtener tamaños de imagen. Lo probé modificando el código dentro de acuerdo con el método introducido. El efecto es realmente bueno. Ahora lo sacaré y lo compartiré contigo:
Use ADODB.stream para obtener la clase común <% del tamaño de la imagen
'/////////////// gps: getPicturesize ///////////
'///////////////////////////
'//////////// CitedByleon (Xinqing) 11 de agosto de 2005 ///////////////
Clasesgps
Dimaso
Privatesubclass_initialize
Setaso = createObject ("ADODB.Stream")
aso.mode = 3
aso.type = 1
Aso. Abre
Endsub
Privatesubclass_merminate
setaso = nada
Endsub
PrivateFunctionBin2str (bin)
Dimi, str
Fori = 1TolenB (contenedor)
CLOW = MidB (Bin, I, 1)
Ifascb (CLOW) <128THEN
Str = str & chr (ascb (clow))
Demás
I = i+1
ifi <= Lenb (bin) thenstr = str & chr (ascw (midb (bin, i, 1) y clow)))
endif
Próximo
Bin2str = str
Función final
PrivateFunctionNum2str (num, base, lente)
'GPS (2005-8-11)
diminal
ret = ""
Mientras (num> = base)
ret = (nummodbase) y retir
num = (num-nummodbase)/base
encaminarse a
Num2str = right (string (lente, "0") & num & ret, lente)
Función final
PrivateFunctionsTr2Num (STR, Base)
'GPS (2005-8-11)
diminal
ret = 0
fori = 1Tolen (str)
Ret = Ret*Base+Cint (Mid (Str, I, 1))
próximo
Str2num = RET
Función final