Avatar billede amd Nybegynder
18. november 2006 - 17:24 Der er 2 kommentarer og
1 løsning

Hvordan resize billede, og så uploade?

Hej eksperter!
Jeg vil gerne uploade et billede, og have det gemt i to størrelser på serveren. tumbnailformat, og et format af lidt bedre kvalitet.
hvordan kan det gøres? Min server understøtter aspImage.
Detnæst skal billederne tildeles hver deres unikke navene, som skal gemmes i en session.
Avatar billede ebe Praktikant
18. november 2006 - 20:19 #1
jeg forstår ikke hele spørgsmålet men,
prøv med picasa, programmet kan godt lave en web-mappe af en mappe med billeder, med thumbnails og færdige formindskede billeder.
Avatar billede madeindk Nybegynder
18. november 2006 - 21:35 #2
Hej, jeg har lige sat følgende script sammen til dig. Ved at læse mine kommenteringer finder du hurtigt ud af hvad du skal gøre - prøv dig frem ;-)

<%
If lCase(Request.ServerVariables("REQUEST_METHOD")) = "post" Then

Server.ScriptTimeout = 3600
   
' Definerer hvilket object jeg skal bruge til at rode med upload.
Set Upload = Server.CreateObject("Persits.Upload")
       
' Da jeg uploader til hukommelsen på serveren, sætter jeg en maks-størrelse på næsten 3 mb
Upload.SetMaxSize 3000000, True
       
' Gemmer i hukommelsen
Count = Upload.Save

' Hvis en fil er valgt       
If count > 0 Then
       
' Henter filen
Set File = Upload.Files("file1")
       
' Henter informationer om filen
strWidth     = File.ImageWidth
strHeight     = File.ImageHeight
strExtension     = lCase(File.Ext)
   
ImgHeight = "350"
ImgWidth = "450"
       
ImgThumbHeight = "100"
ImgThumbMaxWidth = "150"

' Ret her hvad billedet skal hedde
AktualName = Session("ID")

' Hvad hedder mappen de skal gemmes i
' HUSK - i mappen de skal gemmes i skal også laves en mappe ved navn temp og ved navn thumb
strFolder = "/data/"
   
' Gemmer billedet fysisk på serveren
File.SaveAs Server.Mappath("" & strFolder & "/temp") & "\" & AktualName & strExtension
   
Set AspImage = Server.CreateObject("AspImage.Image")
   
AspImage.LoadImage Server.Mappath("" & strFolder & "/temp") & "\" & AktualName & strExtension
   
If strHeight < imgHeight Then
  intYSize = ImgHeight
  intXSize = (intYSize / AspImage.MaxY) * AspImage.MaxX
Else
  intYSize = ImgHeight
End If
   
If Int(strHeight) > Int(ImgHeight) Then
  intYSize = ImgHeight
  intXSize = (intYSize / AspImage.MaxY) * AspImage.MaxX
Else
  intYSize = strHeight
  intXSize = (intYSize / AspImage.MaxY) * AspImage.MaxX
End If
   
If Int(intXSize) > Int(ImgWidth) Then
  intXSize = ImgWidth
  intYSize = (intXSize / AspImage.MaxX) * AspImage.MaxY
Else
  intXSize = strWidth
  intYSize = (intXSize / AspImage.MaxX) * AspImage.MaxY
End if

If intXsize < intYsize then
   
intXsize = "280"
intYsize = "350"
   
AspImage.Resize intXsize, 350
   
Else
AspImage.Resize intXsize, intYsize
End if
   
AspImage.FileName = Server.Mappath("" & strFolder & "") & "\" & AktualName & strExtension
AspImage.SaveImage
   
' Henter billedet saa der kan laves thumb
AspImage.LoadImage Server.Mappath("" & strFolder & "/temp") & "\" & AktualName & strExtension
               
If Int(strHeight) > Int(ImgThumbHeight) Then
  intYSize = ImgThumbHeight
  intXSize = (intYSize / AspImage.MaxY) * AspImage.MaxX
  AspImage.Resize intXsize, intYsize
   
  If Int(intXSize) > 150 Then
    AspImage.CropImage 0, 0, ImgThumbMaxWidth, intYSize
  End if
End if
   
' Gemmer det lille billede
AspImage.ImageFormat = 1
AspImage.JPEGQuality = 75
AspImage.FileName = Server.Mappath("" & strFolder & "/thumb") & "\" & AktualName & strExtension
AspImage.SaveImage

' Sletter det midlertidige billeder
' Der er ingen grund til det ligger og fylder
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
   
strSource = Server.Mappath("" & strFolder & "/temp") & "\" & AktualName & strExtension
   
If FSO.FileExists(strSource) Then
  FSO.DeleteFile(strSource)
End if
   
Set FSO = Nothing

End If

Else
%>

<form action="" method="post" enctype="multipart/form-data" style="margin:0px;">

<b>Vælg fil:</b> <input type="file" name="file1" style="width:300px;">

<br><br>

<input type="submit" value="Upload">

</form>

<% End If %>
Avatar billede amd Nybegynder
19. november 2006 - 13:54 #3
Super lækkert... mange tak ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester