Avatar billede mrjowns Novice
12. september 2003 - 17:33 Der er 7 kommentarer og
1 løsning

Thumpnail problem (ASPImage)

Jeg har en masse billeder der ligger her:

d:\web\xx.dk\www\files\images\
eller http://www.xx.dk/files/images/

...de er alle af formatet .jpg

Mit problem er, at jeg ikke bare skal have alle billederne skrevet ud i en tilfældig rækkefølge.
I min database henter jeg et brugernavn(username) der typisk er på 3 tegn (lovlige tegn) - brugernavnet er identisk med billedet navn + .jpg
Hvordan skriver jeg en thumnail ud af det originale billede fra ovenstående folder i mit rs?

Kode:

<%
Set rs= Server.CreateObject("ADODB.Recordset")
SQL = "SELECT id, username, fornavn, efternavn, lastvisit, bynavn FROM bruger ORDER BY fornavn ASC"
Set rs = MySQLConn.Execute(SQL)
%>
<%
Do While Not rs.EOF
%>

          <tr style="cursor: hand" onmouseover="style.backgroundColor='#DFE7EE';" onmouseout="style.backgroundColor='Transparent';">
            <td width="50" style="border-bottom: 2px solid #BFD7ED; padding-left: 10px"><img border="0" src="http://www.kystlivredningdanmark.dk/files/images/<%=rs("username")%>.jpg"></td>
            <td style="border-bottom: 2px solid #BFD7ED;"><%=rs("fornavn") & " " & rs("efternavn")%> (<%=rs("username")%>)</td>
          </tr>

<%
rs.MoveNext
Loop
%>

I ovenstående kode er billedet IKKE et thumpnail, men originalstørrelse. Hvordan skriver jeg KUN et thumpnail ud?

OK, lidt kringlet men jeg håber det er til at forstå alligevel! :o)
Avatar billede mrjowns Novice
12. september 2003 - 17:40 #2
Okay goose, vil du ikke lige lave det om for mig?

<%
If Request("FileName") <> "" Then
  Set FileObject = CreateObject("Scripting.FileSystemObject")

  If FileObject.FileExists(Request("FileName")) Then

  If Request("Size") <> "" Then
    Size = Int(Request("Size"))
  Else
    Size = 50
  End If

  Response.Expires    = 0
  Set Image            = Server.CreateObject("AspImage.Image")
  Response.ContentType = "image/jpeg"
  Image.LoadImage (Request("FileName"))

  Width    = Image.MaxX
  Height  = Image.MaxY

  If Width < Size Then Size = Width
    If Width > Height Then
    NewWidth  = Round(Size/Width,2)
    NewHeight = Int(NewWidth*Height)
    Image.Resize Size,NewHeight
    Else
    NewHeight = Round(Size/Height,2)
    NewWidth  = Int(NewHeight*Width)
    Image.Resize NewWidth,Size
    End If

  Image.CreateButton 5,true
    Image.ImageFormat = 1
    Image.JPEGQuality = 50
    ProgressiveJPEGEncoding = true
    Response.BinaryWrite Image.Image
    Set Image = nothing
  End If

  Set FileObject = nothing
End If
%>
Avatar billede goose Nybegynder
12. september 2003 - 21:36 #3
Jeg bruger selv nedenstående når jeg laver thumbnails "on the fly", og jeg har indsat din sti til billederne. Jeg ligger nedenstående i en fil for sig selv jeg kalder for "thumbnailer.asp"

<%
'*** Find bredde/højde af det originale billede ***
Set objImg = Server.CreateObject("AspImage.Image")
objImg.LoadImage "d:\web\xx.dk\www\files\images\<%=rs("username")%>.jpg"
ImageHeight = objImg.MaxY
ImageWidth = objImg.MaxX

'*** Udregn ny størrelse ud fra ønsket størrelse ***
size = request.querystring("size")
NewHeight = Cint(ImageHeight*size/ImageWidth)
NewWidth = size
Set objImg = Nothing

'*** lav thumbnail ***
Set Image = Server.CreateObject("AspImage.Image")
Image.LoadImage "d:\web\xx.dk\www\files\images\<%=rs("username")%>.jpg"
Image.ImageFormat = 1
Image.JPEGQuality = 90
Image.ResizeR NewWidth,NewHeight
Response.BinaryWrite Image.Image
Set Image = Nothing
%>

- når jeg så vil have vist thumbnail af et billede, viser jeg det med strengen:

<IMG SRC="thumbnailer.asp?FileName=<%=rs("username")%>.jpg&size=100" BORDER="1" align="bottom" ALT="Dette er et thumbnail">

Jeg har forsøgt at indsætte de data du har oplyst, ellers må du lige skrive igen.

/Goose
Avatar billede eagleeye Praktikant
12. september 2003 - 21:36 #4
Så skal du også lave dit billede link om:

<img border="0" src="http://www.kystlivredningdanmark.dk/files/images/<%=rs("username")%>.jpg">

Til:

<img border="0" src="/VISBILLED.ASP?FileName=/files/images/<%=rs("username")%>.jpg">
Avatar billede goose Nybegynder
12. september 2003 - 21:41 #5
- ja korrekt ....

/Goose
Avatar billede goose Nybegynder
12. september 2003 - 21:43 #6
- eller rettere i mit eksempel:

<img border="0" src="thumbnailer.asp?FileName=/files/images/<%=rs("username")%>.jpg">

/Goose
Avatar billede mrjowns Novice
12. september 2003 - 23:56 #7
Tak for svaret goose! :o) ...det var det jeg manglede!
Avatar billede goose Nybegynder
13. september 2003 - 08:21 #8
Det var så lidt, thx for point :o)

/Goose
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

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel