Beregne ny størrelse på billed ud fra orginalstørrelsen
HejsaJeg skal have lidt hjælp med at formindste et billede. Til et givet billed har jeg en ny størrelse som jeg gerne vil have skaleret den til. Dette er angivet i følgende 2 variable:
Width
Height
Begge variable behøver ikke at indeholde værdier, men den ene af dem vil altid have en værdi. Udover ovenstående, har jeg også orginal størrelsen på billedet:
Jpg.OriginalWidth
Jpg.OriginalHeight
Det jeg så skal have hjælp til at få lavet, er at hvis både Width og Height har en værdi, hvor en af værdierne er størrere end orginal størrelsen, så skal billedet gøres netop så stor så det opfylder at den ny beregnet højde og bredde er mindre end eller lig. med værdin i Width og Height, dog således at billedet ikke bliver forvreden. Jeg tror det er nemmest at illustrer med et par eksempler:
-----------------------------------------------------
Width = 200
Height = 100
Jpg.OriginalWidth = 200
Jpg.OriginalHeight = 50
Ny bredde = 100
Nyhøjde = 50
-----------------------------------------------------
-----------------------------------------------------
Width = 300
Height = 400
Jpg.OriginalWidth = 1200
Jpg.OriginalHeight = 200
Ny bredde = 300
Nyhøjde = 50
-----------------------------------------------------
-----------------------------------------------------
Width = 300
Height = 400
Jpg.OriginalWidth = 200
Jpg.OriginalHeight = 200
Ny bredde = 200
Nyhøjde = 200
-----------------------------------------------------
Hvis det kan hjælpe, så benytter jeg følgende kode til at ændre højden og bredden hvis kun den ene af værdierne er angivet. Det kan være dette kan være til inspiration:
If Width & "X" <> "X" and Height & "X" = "X" Then
' User-specified width
If Jpg.OriginalWidth > Width Then
Height = Jpg.OriginalHeight * Width / Jpg.OriginalWidth
Else
Width = Jpg.OriginalWidth
Height = Jpg.OriginalHeight
End If
ElseIf Width & "X" = "X" and Height & "X" <> "X" Then
' User-specified height
If Jpg.OriginalHeight > Height Then
Width = Jpg.OriginalWidth * Height / Jpg.OriginalHeight
Else
Width = Jpg.OriginalWidth
Height = Jpg.OriginalHeight
End If
End If
På forhånd tak.
