O código a seguir pode ocultar algumas informações digitais úteis na página da web, impedindo que outras pessoas as copiem ou coletem diretamente. Por exemplo, o número de telefone pode impedir que outras pessoas as pesquisem. Função: Utilize o programa ASP para gerar o número de telefone da página em formato de imagem.
Copie o código do código da seguinte forma:
<%
Chame Com_CreatValidCode(Request.QueryString(tel))
Sub público Com_CreatValidCode(pTel)
'----------Desabilitar cache
Resposta.Expira = 0
Response.AddHeader Pragma, sem cache
Response.AddHeader cache-ctrol, sem cache
Response.ContentType = Imagem/BMP
Randomizar
Dim i, ii, iii,rndColor,strLen,sql,rs
Const cOdds = 5 '--------A probabilidade de aparecimento de ruído
Conststr=0123456789-
strLen = len(pTel)
corrnd = ChrB(cint(rnd*255)) & ChrB(cint(rnd*255)) & ChrB(cint(rnd*255))
'----------Dados de cores (caracteres, plano de fundo)
Escurecer vColorData(1)
'vColorData(0) = ChrB(0) & ChrB(0) & ChrB(0) '----Azul 0, Verde 0, Vermelho 0 (preto)
'vColorData(1) = ChrB(255) & ChrB(255) & ChrB(255) '----Azul 250, Verde 236, Vermelho 211 (azul claro)
'vColorData(0) = ChrB(197) & ChrB(106) & ChrB(49) '---- Azul 0, Verde 0, Vermelho 0 (preto)
'vColorData(1) = ChrB(238) & ChrB(210) & ChrB(193) '-----Azul 250, Verde 236, Vermelho 211 (azul claro)
vColorData(0) = ChrB(0) & ChrB(0) & ChrB(0) '---------Azul 0, Verde 0, Vermelho 0 (preto)
vColorData(1) = ChrB(205) & ChrB(237) & ChrB(245) '------------Azul 250, Verde 236, Vermelho 211 (azul claro)
'-------------------------- Gera caracteres aleatoriamente
Randomizar
Escurecer vCode()
redimensionar vCode(strLen-1)
Para i = 0 Para strLen-1
vCode(i) =instr(1,str,mid(pTel,i+1,1),1)-1
Próximo
'----------Dados do personagem
Escurecer vNumberData(11)
'Fonte Verdana
vNumberData(0) = 1111111111000111101110111011101110111011101110111011101110111011110001111111111
vNumberData(1) = 111111111111011111100111111101111110111111101111111011111101111110001111111111
vNumberData(2) = 11111111110001111011101110111011111011111101111110111111011111100000111111111
vNumberData(3) = 111111111100011110111011111110111110011111110111111101110111011110001111111111
vNumberData(4) = 11111111111110111111001111101011110101111011011111000011111101111111001111111111
vNumberData(5) = 111111111100000111011111101111111000011111110111111101110111011110001111111111
vNumberData(6) = 1111111111000111101101111011111110000111101110111011101110111011110001111111111
vNumberData(7) = 1111111111000001110110111111011111011111110111111101111111011111110111111111111
vNumberData(8) = 1111111111000111101110111011101111000111101110111011101110111011110001111111111
vNumberData(9) = 11111111111000111101110111011101110111011110000111111101111011011110000111111111
vNumberData(10) = 1111111111111111111111111111111111111110000011111111111111111111111111111111
vNumberData(11) = 111111111111111111111111111111111111111111111111111111111111111111111111111
'-----------------Cabeçalho do arquivo de imagem de saída<br>
Response.BinaryWrite ChrB(66) & ChrB(77) &chrb(((strLen*8*10*3+54) mod 256)) & chrb(((strLen*8*10*3+54)/ 256)mod 256 ) & ChrB((((strLen*8*10*3+54)/ 256)/256)mod 256) & ChrB(((((strLen*8*10*3+54)/ 256)/256)/256)mod 256) & ChrB(0) & ChrB(0) &_
ChrB (0) e ChrB (0) e ChrB (54) e ChrB (0) e ChrB (0) e ChrB (0) e ChrB (40) e ChrB (0) &_
ChrB (0) e ChrB (0) e ChrB (strLen * 8) e ChrB (0) e ChrB (0) e ChrB (0) e ChrB (10) e ChrB (0) &_
ChrB(0) e ChrB(0) e ChrB(1) e ChrB(0)
'------------------Cabeçalho de informações da imagem de saída
Response.BinaryWrite ChrB(24) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0)&_
ChrB((strLen*8*10*3)mod 256)&ChrB(((strLen*8*10*3)/256)mod 256)&ChrB((((strLen*8*10*3)/256)/256 )mod 256)&ChrB(((((strLen*8*10*3)/256)/256)/256)mod 256)&_
ChrB(196) & ChrB(14) & ChrB(0) & ChrB(0) & ChrB(196) & ChrB(14)&ChrB(0) & ChrB(0) &_
ChrB (0) e ChrB (0) e ChrB (0) e ChrB (0) e ChrB (0) e ChrB (0) e ChrB (0) e ChrB (0)
Para i = 9 a 0 Etapa -1 '---------- Percorra todas as linhas
For ii = 0 To strLen-1 '------Percorra todas as palavras
Para iii = 1 a 8 '--------Percorra todos os pixels
'---------Saída de dados de imagem linha por linha, palavra por palavra e pixel por pixel
If Rnd * 99 + 1 < cOdds Then '--------- Gera ruído aleatoriamente
Response.BinaryWrite rndColor
Outro
Response.BinaryWrite vColorData(Mid(vNumberData(vCode(ii)), i * 8 + iii, 1))
Terminar se
Próximo
Próximo
Próximo
Finalizar sub
%>
Salve o código acima como img.asp e insira <img src=img.asp?tel=010-0000000> onde deseja exibir o número de telefone.