Avatar billede bongi Juniormester
29. oktober 2004 - 11:14 Der er 7 kommentarer og
1 løsning

Aspimage: Lave og gemme lille kopi af billed

Hej ex'er

Jeg har behov for hjælp (igen)

Jeg har behov for at lave en thumbnail hvor bredde er max 200 og højde er max 300 men skal beholde det rigtige forhold af billedet(JPG)

Billedet skal hedde det orginale filnavn bare med th_ foran

Jeg har behov for at de gemmes på severen og ikke laves midlertidigt.

Der er ASPimage på serveren

(det er til min kones hjemmeside ;-/ )
Avatar billede bongi Juniormester
29. oktober 2004 - 11:15 #1
Ps. det orgianle billed må ikke ændres.
Avatar billede hiks Nybegynder
29. oktober 2004 - 13:29 #2
hej

jeg mener at dette er aspimage - fundet for lang tid siden på nettet og kun brugt een gang:

Function Createthumbnail(strPath, strFilename, maxX, maxY)

    Set image = server.createobject("aspimage.image")
    if image.loadimage(strPath & "\" & strFilename) then
        intWidth = image.MaxX
        intHeight = image.MaxY

        if (intWidth<MaxX) and (intHeight<MaxY) then
            if intWidth>intHeight then
                intRatio=(maxX/intWidth)
                image.resizeR intWidth*intRatio, intHeight*intRatio
            else
                intRatio=(maxY/intHeight)
                image.resizeR intWidth*intRatio, intHeight*intRatio
            end if
        end if

        'Optimised for JPEG thumbnails - generally better than GIFs
        Image.ImageFormat = 1
        Image.PixelFormat = 6
       
        strSfilename=split(strFilename,".")
   
        Image.Filename=strPath & "\" & strSfilename(0) & "_thumb"
   
        picture= strSfilename(0) & "_thumb"
   
        if Image.SaveImage then
            response.write "<img src=""test/" & picture & ".jpg"">"
            Set Image = nothing
        else
            'You may want to put some kind of error handler in here
            Set Image = nothing
        end if
else
    'Error while loading, abort
    Set Image = nothing
    exit function
end if
end function

Test=Createthumbnail(""& Server.MapPath("bilder") &"", ""& NewName & Ext &"", "86", "100")

/hiks
Avatar billede bongi Juniormester
01. november 2004 - 11:50 #3
Jeg kan ikke få det til at virke det køre igennem uden fejlmeldinger men laver ikke noget..
Avatar billede hiks Nybegynder
01. november 2004 - 11:56 #4
og du sender alle parametre ned i funktionen og billedet eksisterer på serveren?

/hiks
Avatar billede bongi Juniormester
01. november 2004 - 12:22 #5
Jeps..

Men jeg har fundet ud af en del af det selv nu:

  Set FS = CreateObject("Scripting.FileSystemObject")
  FileName_2 = Server.MapPath ("\foto\"&FileName)


  Set Image = Server.CreateObject("AspImage.Image")
  Image.LoadImage(FileName_2)
  Image.JPEGQuality = 98
  Image.resize 200, 300
  Nyt_filnavn = "th_" & FileName_2
  response.write Nyt_filnavn
  Image.FileName = (Nyt_filnavn)
  Image.SaveImage
  Set Image = nothing

Og når jeg laver en lille test bliver resultatet :

Filen The_English_Patient-cd.jpg er uploaded!
th_c:\webs\antikshoppen.dk\www\foto\test_billed.jpg 

Så nu har jeg bare et lille problem med at få sat th_ ind det rigtige sted...

Noget du kan hjælpe med ?
Avatar billede bongi Juniormester
01. november 2004 - 12:23 #6
Det skulle jo gerne stå foran filnavnet og ikke foran c:\webs...
Avatar billede bongi Juniormester
01. november 2004 - 12:31 #7
evt. kan det jo også stå efter filnavnet lige før .jpg hvis det er lettere at sætte det ind der p.g.a punktummet ???
Avatar billede bongi Juniormester
01. november 2004 - 15:18 #8
Har selv løst det...

  Set FS = CreateObject("Scripting.FileSystemObject")
  FileName_2 = Server.MapPath ("\foto\"&FileName)

  Set Image = Server.CreateObject("AspImage.Image")

  Image.LoadImage(FileName_2)
  Image.JPEGQuality = 98
 
  '----Sætter rette størrelse----
 
  Image_Height = Image.MaxY
  Image_Width = Image.MaxX
 
  If Image_Width > 200 then
      Ny_bredde = 200
    Ny_Hojde = (Image_Height/(Image_Width/200))
    if Ny_Hojde > 300 then
        Ny_Hojde_1 = 300
        Ny_bredde_1 = (Ny_bredde/(Ny_Hojde/300))
        Image.resize Ny_bredde_1, Ny_Hojde_1
          'Response.write "Ny højde = " & Ny_Hojde_1  & " - Ny bredde = " & Ny_bredde_1 & "<br>"
    Else
        Image.resize Ny_bredde, Ny_Hojde
          'Response.write "Ny højde = " & Ny_Hojde  & " - Ny bredde = " & Ny_bredde & "<br>"
    end if
    Var_temp = 1
  End if
 
  If not Var_temp = 1 then
 
      If Image_Height > 300 then
        Ny_Hojde_1 = 300
        Ny_bredde = (Image_Width/(Image_Height/300))
        'Response.write "For højt - Ny højde = " & Ny_Hojde  & " - Ny bredde = " & Ny_bredde & "<br>"
        Image.resize Ny_bredde, Ny_Hojde_1
      End if
  End if
 
 
  '----Sætter rette størrelse slut----
 
  strSfilename = split(Filename,".")
  Image.Filename = "c:\www\foto\" & "th_" & strSfilename(0) & ".jpg"
  Nyt_filnavn = "c:\www\foto\" & "th_" & strSfilename(0) & ".jpg"

  Image.SaveImage
  Set Image = nothing


Hvis andre skulle have samme problem.
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