06. oktober 2002 - 21:17Der er
4 kommentarer og 1 løsning
Resize billede, men kun hvis det er større end x
Hej Alle,
Jeg vil gerne have mulighed for at sætte et billede til fx at være maks. 800 i bredden, MEN kun hvis billedets bredde i forvejen er over 800. Hvis billedet kun er fx. 300 i bredden skal det bare have normal størrelse, for ikke at stretche billedet.
Det skal lige siges at det SKAL kunne fungere med både jpg og gif...
Jeg forestiller mig at jeg via asp skal hente billedets info i folderen, men jeg ved ikke om det er korrekt.
Er det ladesiggøreligt?
Håber på voldsomt hurtigt svar. :o)
hilsener
Tommy
ps. min udbyder er scannet hvis det har noget at skulle have sagt.
AI bliver først for alvor en del af arbejdet, når teknologien integreres i den måde, vi arbejder på. At have adgang til AI betyder ikke nødvendigvis, at medarbejderne er klar til at bruge den.
<% '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: ::: '::: This routine will attempt to identify any filespec passed ::: '::: as a graphic file (regardless of the extension). This will ::: '::: work with BMP, GIF, JPG and PNG files. ::: '::: ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: Based on ideas presented by David Crowell ::: '::: (credit where due) ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: blah blah blah blah blah blah blah blah blah blah blah blah ::: '::: blah blah blah blah blah blah blah blah blah blah blah blah ::: '::: blah blah Copyright *c* MM, Mike Shaffer blah blah ::: '::: blah blah ALL RIGHTS RESERVED WORLDWIDE blah blah ::: '::: blah blah Permission is granted to use this code blah blah ::: '::: blah blah in your projects, as long as this blah blah ::: '::: blah blah copyright notice is included blah blah ::: '::: blah blah blah blah blah blah blah blah blah blah blah blah ::: '::: blah blah blah blah blah blah blah blah blah blah blah blah ::: ':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
'::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: ::: '::: This function gets a specified number of bytes from any ::: '::: file, starting at the offset (base 1) ::: '::: ::: '::: Passed: ::: '::: flnm => Filespec of file to read ::: '::: offset => Offset at which to start reading ::: '::: bytes => How many bytes to read ::: '::: ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: function GetBytes(flnm, offset, bytes)
Dim objFSO Dim objFTemp Dim objTextStream Dim lngSize
on error resume next
Set objFSO = CreateObject("Scripting.FileSystemObject")
' First, we get the filesize Set objFTemp = objFSO.GetFile(flnm) lngSize = objFTemp.Size set objFTemp = nothing
fsoForReading = 1 Set objTextStream = objFSO.OpenTextFile(flnm, fsoForReading)
if offset > 0 then strBuff = objTextStream.Read(offset - 1) end if
if bytes = -1 then ' Get All! GetBytes = objTextStream.Read(lngSize) 'ReadAll else GetBytes = objTextStream.Read(bytes) end if
objTextStream.Close set objTextStream = nothing set objFSO = nothing
end function
'::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: ::: '::: Functions to convert two bytes to a numeric value (long) ::: '::: (both little-endian and big-endian) ::: '::: ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: function lngConvert(strTemp) lngConvert = clng(asc(left(strTemp, 1)) + ((asc(right(strTemp, 1)) * 256))) end function
function lngConvert2(strTemp) lngConvert2 = clng(asc(right(strTemp, 1)) + ((asc(left(strTemp, 1)) * 256))) end function
'::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: ::: '::: This function does most of the real work. It will attempt ::: '::: to read any file, regardless of the extension, and will ::: '::: identify if it is a graphical image. ::: '::: ::: '::: Passed: ::: '::: flnm => Filespec of file to read ::: '::: width => width of image ::: '::: height => height of image ::: '::: depth => color depth (in number of colors) ::: '::: strImageType=> type of image (e.g. GIF, BMP, etc.) ::: '::: ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: function gfxSpex(flnm, width, height, depth, strImageType)
dim strPNG dim strGIF dim strBMP dim strType strType = "" strImageType = "(unknown)"
'HER ER KODEN SOM UDSKRIVER ALLE BILLEDE FILE (JPG,GIF) FRA DEN FOLDER ASP FILEN 'LIGGER I '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: TESTE KODE ::: ':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Set objFSO = CreateObject("Scripting.FileSystemObject")
'Ret stien til den folder du har asp og billerne i : . = current folder Set objF = objFSO.GetFolder(Server.MapPath("."))
Set objFC = objF.Files
response.write "<table>"
For Each f1 in objFC if instr(ucase(f1.Name), ".GIF") OR instr(ucase(f1.Name), ".JPG") then 'Kalder function som returnere størrelsen på billet if gfxSpex(server.MapPath(f1.Name), intWidth, intHigh, intColor, strType) = true then
response.write "<tr><td>" 'Definer MAX width maxWidth = 800
'Udskriver billede tagen if (intWidth > maxWidth) then Response.Write "<img src=""" & (f1.Name) & """ width=""" & maxWidth & """ hight=""" & Int(intHigh/(intWidth/maxWidth)) & """>" else Response.Write "<img src=""" & (f1.Name) & "">" end if response.write "</td></tr>"
end if end if Next
response.write "</table>"
set objFC = nothing set objF = nothing set objFSO = nothing %>
Tusind tak for hjælpen!! det ser jo ud til at funke perfekt :o)
hilsener
Tommy
Synes godt om
Ny brugerNybegynder
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.