andei sumido... hehe...
bom, hoje vou falar de uma coisa que poucos devem saber, porém pode ser muito útil caso você deseja criar um mural de recados que aceite imagens, uma comunidade, blog, sei lá... pode ser util pra muita coisa...
bom é o seguinte...
você certamente sabe que o aspjpeg é um componente bem legal que permite que vc edite uma foto que está no seu servidor como quiser e salve, ou imprima na tela....
a parte mais legal que vc nao sabe, é que você, com uma ajudinha do XMLHTTP, consegue editar uma imagem que pode estar em qualquer servidor, e você poderá salvá-la ou simplesmente exibir na tela com as alterações que vc fizer com o aspjpeg...
você vai ver que é muito simples!!
vamos aos códigos...
criaImg.asp
<%
'Tratamento de imagens externas
'por Alexandro Cunhago
'em 29-04-2008
'email: alex@megaclassi.com.br
'msn: guitarman@pop.com.br
On Error Resume Next
'aqui vamos receber o endereço da imagem imagem original
imagem = request.QueryString("img")
'esta função serve para converter o códigos-binário em string, porém nao vamos utuliza-lo nessa aplicação...
Function BinaryToString(strBinary)
Dim intCount
BinaryToString =""
For intCount = 1 to LenB(strBinary)
BinaryToString = BinaryToString & chr(AscB(MidB(strBinary,intCount,1)))
Next
End Function
'aqui comessa a grande sacada... é onde acessamos a url resgatada acima e pegamos seu código binário, com XMLHTTP
Set xml = Server.CreateObject("MSXML2.ServerXMLHTTP")
xml.Open "GET", ""& imagem &"", False
xml.setRequestHeader "User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
xml.setRequestHeader "referer", "http://www.seusite.com.br"
xml.Send
var = xml.responsebody
'response.BinaryWrite var
set xml = nothing
'código binário na mão... agora é so utilizar o método OpenBinary, do aspjpeg para carregar a imagem com este componente... agora vc pinta e borda a imagem como quiser
'neste exemplo eu vou apenas redimensionar imagens com largura maiores do que 400 pixels
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Jpeg.OpenBinary var
L = 400
If Jpeg.OriginalWidth > Jpeg.OriginalHeight Then
If Jpeg.OriginalWidth > L Then
Jpeg.Width = L
Jpeg.Height = Jpeg.OriginalHeight * L / Jpeg.OriginalWidth
End if
Else
If Jpeg.OriginalHeight > L Then
Jpeg.Height = L
Jpeg.Width = Jpeg.OriginalWidth * L / Jpeg.OriginalHeight
End if
End If
'e agora com o SendBinary eu estou imprimindo a imagem na tela, sem precisar se quer salva-la no meu servidor, nao ocupando espaço em disco.
Jpeg.SendBinary
%>agora que vc ja tem o arquivo criaImg.asp, pra exibir uma imagem no seu site basta inserir a linha abaixo:
index.asp
<img src="criaImg.asp?img=url_da_imagem">
aí está galéra... agora, conforme a necessidade e a criatividade de vcs mandar, vcs poderao fazer qualquer coisa com uma imagem, tanto interna como externa!
façam bom proveito deste código, e por gentileza mantenham os créditos
abraço!!



Postagens
Male
