Skall göra om storleken, det funkar också, men jag kan bara ha fast bredd/höjd, vill ha fast bredd och höjden måste stå i proportion till bredden. Se exempel nedan. Nedanstående borde hjälpa dig att hålla kvar proportionerna på bilden med en maxbredd på 640 och max höjd på 480 Hej Ursäkta att det tog lite tid men här kommer ett nytt förslag som ger höjd 100Förändra storlek med rätt proporttioner med AspImage
Set Upload = Server.CreateObject("Persits.Upload")
Set Jpeg = Server.CreateObject("AspImage.Image")
'============== spar orginal
Server.ScriptTimeout = 180
Upload.Save
For Each File in Upload.Files
File.SaveAs (server.mappath("/") + "\bilder\"&strLopnr&"\big\"&bildnamnet&".jpg")
Next
'========================= funkar hit uppladdning ===============================
Dim File
For Each File in Upload.Files
If File.ImageType <> "JPG" Then
Response.Redirect "produkter_bilder.asp?txtLopnr="&strLopnr&"&txtFel=Not a jpg file"
File.Delete
Response.End
End If
Dim strFileName, strFilePath
Dim strFileNameBig, strFileNameSml
strFileName = File.FileName
strFilePath = File.Path
strFileNameBig = Server.MapPath("/bilder") & "/"&strLopnr&"/small/"&bildnamnet&".jpg"
strFileNameSml = (server.mappath("/") + "\bilder\"&strLopnr&"\small\"&bildnamnet&".jpg")
Jpeg.JPEGQuality = 100
Jpeg.AutoClear = False
Jpeg.AutoSize = False
Jpeg.LoadImage strFilePath
If Jpeg.MaxY > 480 Then
Dim intXSizeY
intXSizeY = (480 / Jpeg.MaxY) * Jpeg.MaxX
Jpeg.ResizeR intXSizeY, 480
End If
If Jpeg.MaxX > 640 Then
Dim intYSizeX
intYSizeX = (640 / Jpeg.MaxX) * Jpeg.MaxY
Jpeg.ResizeR 640, intYSizeX
End If
Jpeg.FileName = strFileNameBig
If Jpeg.SaveImage Then
Else
Response.Redirect "produkter_bilder.asp?txtLopnr="&strLopnr&"&txtFel=Error Resizeing"
End If
Jpeg.LoadImage strFilePath
Jpeg.ResizeR 100, 100
Jpeg.FileName = strFileNameSml
If Jpeg.SaveImage Then
Else
Response.Redirect "produkter_bilder.asp?txtLopnr="&strLopnr&"&txtFel=Error Resizeing 2"
End If
Next
Response.Clear
Set Upload = nothing
Set Jpeg = nothing
Response.Redirect "produkter_bilder.asp?txtLopnr="&strLopnr&""Sv: Förändra storlek med rätt proporttioner med AspImage
Dim newX as integer = 640
Dim newY as integer = 480
If Jpeg.MaxY > 480 then
newX = (480 / Jpeg.MaxY) * Jpeg.MaxX
else
newY = Jpeg.MaxY
End If
If Jpeg.MaxX > 640 Then
NewY = ( 640 / Jpeg.MaxX) * newY
End If
Jpeg.ResizeR newX,NewYSv:Förändra storlek med rätt proporttioner med AspImage
i ditt exempel bestämmer du tydligen både bredd och höjd, jag vill kunna bestämma bredd=100 och då skall höjden bil därefter i rätt proporttion.Sv: Förändra storlek med rätt proporttioner med AspImage
Jpeg.MaxX = Clng((100 / Jpeg.MaxY) * Jpeg.MaxX)
Jpeg.MaxY = 100
Jpeg.ResizeR newX,NewY