
Deixar Tamanho Padrão Para Toda As Fotos
#1
Posted 05/04/2006, 10:15
então eu estou fazendo uma espécie de upload. tipo eu tenho esse tipo de campo texto:
<input name="foto_mudar" type="file" class="FormBotao" style="width:250px;">
e tenho um botão chamado upload. quando uma imagem é selecionada e clico em upload eu faço um update da imagem. e para fazer o upload da imagem faço esse code onde não precisa de componentes:
<%
' Upload Sem componentes ---------------------------------------
Sub BuildUploadRequest(RequestBin)
on error resume next
PosBeg = 1
PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(13)))
boundary = MidB(RequestBin, PosBeg, PosEnd - PosBeg)
BoundaryPos = InStrB(1, RequestBin, boundary)
Do Until (BoundaryPos = InStrB(RequestBin, boundary & getByteString("--")))
Dim UploadControl
Set UploadControl = CreateObject("Scripting.Dictionary")
Pos = InStrB(BoundaryPos, RequestBin, getByteString("Content-Disposition"))
Pos = InStrB(Pos, RequestBin, getByteString("name="))
PosBeg = Pos + 6
PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(34)))
Name = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
PosFile = InStrB(BoundaryPos, RequestBin, getByteString("filename="))
PosBound = InStrB(PosEnd, RequestBin, boundary)
If PosFile <> 0 And (PosFile < PosBound) Then
PosBeg = PosFile + 10
PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(34)))
FileName = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
UploadControl.Add "FileName", FileName
Pos = InStrB(PosEnd, RequestBin, getByteString("Content-Type:"))
PosBeg = Pos + 14
PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(13)))
ContentType = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
UploadControl.Add "ContentType", ContentType
PosBeg = PosEnd + 4
PosEnd = InStrB(PosBeg, RequestBin, boundary) - 2
Value = MidB(RequestBin, PosBeg, PosEnd - PosBeg)
Else
Pos = InStrB(Pos, RequestBin, getByteString(Chr(13)))
PosBeg = Pos + 4
PosEnd = InStrB(PosBeg, RequestBin, boundary) - 2
Value = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
End If
UploadControl.Add "Value", Value
UploadRequest.Add Name, UploadControl
BoundaryPos = InStrB(BoundaryPos + LenB(boundary), RequestBin, boundary)
Loop
End Sub
Function getByteString(StringStr)
For i = 1 To Len(StringStr)
Char = Mid(StringStr, i, 1)
getByteString = getByteString & ChrB(AscB(Char))
Next
End Function
Function getString(StringBin)
getString = ""
For intCount = 1 To LenB(StringBin)
getString = getString & Chr(AscB(MidB(StringBin, intCount, 1)))
Next
End Function
' Fim upload sem Componentes -----------------------------------------
%>
e determino o caminho da imagem selecionada assim:
' Tipo de arquivo que esta sendo enviado
tipo_foto = UploadRequest.Item("foto").Item("ContentType")
' Caminho completo dos arquivos enviados
caminho_foto = UploadRequest.Item("foto").Item("FileName")
' Nome dos arquivos enviados
nome_foto = Right(caminho_foto,Len(caminho_foto)-InstrRev(caminho_foto,"\"))
nome_foto = Replace(nome_foto,".","_"& rndit &".")
' Conteudo binario dos arquivos enviados
foto = UploadRequest.Item("foto").Item("Value")
' pasta onde as imagens serao guardadas
pasta = Server.MapPath("images/")
nome_foto = "/"&nome_foto
' pasta + nome dos arquivos
cfoto = "images" + nome_foto
' Fazendo o Upload do arquivo selecionado
if foto <> "" then
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
Set MyFile = ScriptObject.CreateTextFile(pasta & nome_foto)
For i = 1 to LenB(foto)
MyFile.Write chr(AscB(MidB(foto,i,1)))
Next
MyFile.Close
end if
gostaria de saber se tem como eu definir um tamhão padrão para todas as imagens. Exemplo: eu tenho uma imagem com o tamanho: 1122 x 650 gostaria de deixar 100 x 100 em todas as fotos que eu selecionar. mesmo eu pegando uma imagem menor.
tem como deixar um tamanho padrão para todas?
vlwdeix
#2
Posted 05/04/2006, 10:43

Se for ASP terá que usar componentes como o ASPJPeg que é pago e poucos Host's tem o mesmo, se usar .Net pode ser feito importando as bibliotecas necessários ( o que é não é dificil ) e por ultimo ( ufa ) dar o tamanho no HTML direto.
Com o ASPJpeg e .Net vc redimesiona a img proporcionalmente, sendo assim a imagem não fica desproporcional, mas no HTML direto ( <img src="imagem.jpg" width="100" heigth = "100" /> ) dependendo do tamanho da img ela ficará desproporcional e/ou muito esquisita.

#3
Posted 05/04/2006, 11:03
Olá Worm, cara sou razoavelmente novo em ASP e ja tentei por varias vezes mostrar as imagens que estao cadastradas no meu BD atravaves do ASP JPG porem ele sempre repete a primeira imagem.
Teria como vc mostrar um codigo de exemplo para a visualização das imagens em redimencionadas ?
Muitissimo obrigado
#4
Posted 05/04/2006, 11:07
Aproveitando o Topico
Olá Worm, cara sou razoavelmente novo em ASP e ja tentei por varias vezes mostrar as imagens que estao cadastradas no meu BD atravaves do ASP JPG porem ele sempre repete a primeira imagem.
Teria como vc mostrar um codigo de exemplo para a visualização das imagens em redimencionadas ?
Muitissimo obrigado
é só a imagem que repete ? os dados não ?
#5
Posted 05/04/2006, 11:19
#6
Posted 05/04/2006, 11:29
imagine que tenho 500 registros com fotos tá. tipo um galeria.
essas imagens estão no tamanho original, aó que quando quero mostra-las na pagina monto o recordset e mostro x imagens por pagina. ai é que esta o problema.
ele esta pegando o caminho da primeira imagem e repete para todas as outras sendo que o link para visualização da foto maior fica correto.
deu pra entender ?
#7
Posted 05/04/2006, 11:45
do while not objeto.eof 'mostra a img img = objeto("campo") objeto.movenext loop
a variavel img a cada vez que que o loop pasar vai ter o nome de uma img diferente ?
Se sim, é só usar o ASPJEPG e dar os novos tamanhos, se não o loop está errado.
é isso ?

#8
Posted 05/04/2006, 12:55
Qlq coisa posta ai
beijinhos
Tathy
A vida foi feita pra curtir, curta a vida da sua maneira, eu curto a minha programando!
#9
Posted 05/04/2006, 13:36
Espero que ajude...' Guardamos as fotos em uma váriavel
fotos = rs("Foto")
'Criamos o Objeto
Set Jpeg = Server.CreateObject("Persits.Jpeg")
' aqui selecionamos o caminho e quais fotos serão dimensionadas
Path = Server.MapPath("fotos/") & "\"&fotos
' abrindo codigo da imagem
Jpeg.Open Path
' Definimos os tamanhos que serão gerados os thumbs.
Jpeg.Width = 70
Jpeg.Height = 52
' Gerando o nome dos arquivos de thumbs
fotos_cria = left(fotos, len(fotos) - 4)
' Criamos aqui as fotos menores.
Jpeg.Save Server.MapPath("fotos/") & "\"&fotos_cria&"_small.jpg"
Edição feita por: Operador, 05/04/2006, 13:36.
Não sei assinar... ehehehe
----------------------------------------------------------------------------
#10
Posted 05/04/2006, 13:56
Amigo existe um componente gratuito pra redimensionar fotos nao sou muito a favor dele mas como é gratuito é melhor. O nome dele é imager resize, e ele possui uma dll para ser hospedado no ftp, alem disso precisa de algumas configuracoes do provedor como colocar a pasta q esta a dll com execucao de scripts.
Qlq coisa posta ai
beijinhos
Tathy
Nunca ouvi falar nesse componente.

Sabe onde posso encontralo ?
#11
Posted 05/04/2006, 23:40
http://www.aspobject...cat3=300&page=1
valeu

Ta com dúvida pergunta aqui no fórum...
Grato
#12
Posted 06/04/2006, 09:44
tem essa lista com alguns componentes pagos e alguns (muito poucos) gratuitos...
http://www.aspobject...cat3=300&page=1
valeu
O site não funciona direito.

#13
Posted 06/04/2006, 10:08
Valeu

Ta com dúvida pergunta aqui no fórum...
Grato
2 user(s) are reading this topic
0 membro(s), 2 visitante(s) e 0 membros anônimo(s)