Primeiro de tudo, sabemos que a imagem da página é o seguinte código:
<img src = pic.gif borda = 0 largura = 300 altura = 260>
SRC é o caminho da imagem, a borda controla a largura da imagem, a largura é o comprimento da imagem e a altura é a altura da imagem. A geração de um diagrama estreito está realmente ampliando o tamanho original. Mas, para ser o mais distorção possível, seremos dimensionados proporcionais. Como resultado, o tamanho e o tamanho da largura da imagem também se tornaram o foco de um diagrama de deflexão.
A seguir, é apresentado a etapa de escrever sem componentes para gerar uma miniatura:
1. Obtenha o tamanho da imagem sem componentes
Antes de aprender o ASP, vi um artigo usando o código ASCII para obter o tamanho da imagem sem componentes. Mais tarde, tentei e descobri que, ao obter o tamanho da classe JPG, nem sempre foi exibida corretamente. Solução. Posteriormente, o Google foi encontrado posteriormente um artigo que introduziu o tamanho do tamanho da imagem usando o Adodb.stream
Use Adodb.stream para obter a classe geral de tamanho de imagem
| A seguir, o fragmento de código: <% '/////////// GPS: Obtenha tamanho impressionante ///////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////Tipos /////////////////////////////////////////////////////////Tipos //////////////////////////////////////// Gons '////////////// Use Adodb.stream para obter o tamanho da imagem //////////////// '//////// citado por Leon (Xinqing) 11 de agosto de 2005 /////////// GPS da classe Dim Aso Sub -Class_initialize privado Definir Aso = CreateObject (adodb.stream) ASO.MODE = 3 ASO.TYPE = 1 ASO.OPEN Final sub Sub -Class_terminado privado definir aso = nada Final sub Função privada bin2str (lixo) Dim i, str Para i = 1 a lenb (bin) Clow = MIDB (bin, i, 1) Se ASCB (Clow) <128 então Str = str & ch (ASCB (Clow)) Outro I = i 1 Se i <= lenb (bin) então str = str & ch (ascw (midb (bin, i, 1) e coro final se Próximo Bin2str = str Função final Função privada num2str (num, base, lente) 'GPS (2005-8-11) Dim ret Ret = While (num> = base) RET = (Num Mod Base) e RET NUM = (num -num mod base)/base Wend Num2str = direita (string (lente, 0) e num & ret, lente) Função final Função privada str2num (str, base) 'GPS (2005-8-11) Dim ret Ret = 0 para i = 1 a len (str) Ret = ret *base cint (mid (str, i, 1)) próximo Str2num = ret Função final Função privada Binval (BIN) 'GPS (2002-8-11) Dim ret Ret = 0 para i = lenb (bin) a 1 etapa -1 Ret = ret *256 ASCB (midb (bin, i, 1)) próximo Binval = ret Função final Função privada binval2 (lixo) 'GPS (2002-8-11) Dim ret Ret = 0 para i = 1 a lenb (bin) Ret = ret *256 ASCB (midb (bin, i, 1)) próximo Binval2 = ret Função final '/// a seguir é o código de chamada /// Function getImagesize (FileSec) 'GPS (2002-8-11) Dim ret (3) ASO.LOADFROMFILE (FILESC) bflag = aso.read (3) Selecione Case Hex (Binval (BFLAG)) Caso 4E5089: Aso.read (15) Ret (0) = png Ret (1) = binval2 (aso.read (2)) Aso.read (2) Ret (2) = binval2 (aso.read (2)) Caso 464947: ASO.read (3) Ret (0) = gif Ret (1) = binval (aso.read (2)) Ret (2) = binval (aso.read (2)) Caso 535746: Aso.read (5) bindata = aso.read (1) Sconv = num2str (ASCB (bindata), 2, 8) nbits = str2num (esquerda (sconv, 5), 2) SCONV = MID (SCONV, 6) Enquanto (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) Caso FFD8FF: FAZER do: p1 = binval (aso.read (1)): loop while p1 = 255 e não aso.eos Se P1> 191 e P1 <196 A saída do outro.read (binval2 (Aso.read (2))-2) do: p1 = binval (aso.read (1)): loop while p1 <255 e não aso.eos Loop enquanto verdadeiro ASO.read (3) Ret (0) = jpg Ret (2) = binval2 (aso.read (2)) Ret (1) = binval2 (aso.read (2)) Caso mais: se esquerdo (bin2str (bflag), 2) = bm então Aso.read (15) Ret (0) = bmp Ret (1) = binval (aso.read (4)) Ret (2) = binval (aso.read (4)) outro Ret (0) = final se final Selecione Ret (3) = largura = & ret (1) e altura = & Ret (2) & GetImagesize = ret Função final Classe final %> |
Copie o código acima para gerar arquivos GPs.asp, para que a classe geral do tamanho da imagem sem componentes seja OK.
2. Agora, primeiro projetamos uma página showimg.asp para exibir um mapa de toque e informações relacionadas. O design específico é o seguinte:
foto:
Formato de imagem: