Acceptabel filstørrelse efter resize
Hejsa,jeg har lavet en funktion til on-the-fly resizing af images til brug for et fotoalbum. Den skal fyre billeder ned i et format, der er egnet til skærmen, fra fx digitalkamera'ernes absurde opløsning. Funktionen virker upåklageligt, men der er et stort men. Jeg ville gerne slække på kvaliteten samtidig, således at billederne ikke fylder så fandens meget.
P.t. sparer jeg ikke meget mere end 20-30% ved resizing, hvilket er uacceptabelt (i nogle tilfælde fylder resultat-filen mere end originalen!).
Måske hvis man kunne sætte DPI eller farvedybden ned, kunne man få en mere tålelig filstørrelse. Er der nogle der har erfaringer/løsningsforslag?
Her er funktionen:
Private Sub CreateOptimized(ByVal file As FileInfo)
Dim originalFile As Bitmap
Try
originalFile = New Bitmap(file.FullName)
Catch ex As Exception
Return
End Try
Dim opty As Integer = OPTIMIZED_HEIGHT
Dim optx As Integer = originalFile.Width / (originalFile.Height / opty)
Dim optim As New Bitmap(originalFile, optx, opty)
Dim destination As DirectoryInfo = (New FileInfo(optimized.FullName & "\" & RelativePath(file))).Directory
Try
If Not destination.Exists Then
destination.Create()
End If
optim.Save(optimized.FullName & "\" & RelativePath(file))
Catch ex As Exception
End Try
optim.Dispose()
originalFile.Dispose()
End Sub
