Ciao a tutti, ho un problema con un codice che mi ridimensiona le immagini e devo dire che funge benissimo, la qualità finale è ottima, ma trovo una leggera differenza sui colori finali dopo il ridimensionamento,i colori sono leggermente diversi.Se apro l'immagine originale e la ridimensiono con photoshop i colori rimangono intatti, qualcuno potrebbe aiutarmi a modificarlo? Potrebbe essere diminuzione di qualità?
Ecco un esempio:
Foto originale
Foto Ridimensionata con quel codice
codice:
For i = 0 To lvwImmagini.Items.Count - 1
Application.DoEvents()
If lvwImmagini.Items(i).Checked = True Then
Dim risultato = "Foto_" & Genera(8).ToUpper & ".jpg"
If lvwImmagini.Items(i).SubItems(0).Text.ToString.ToUpper() = nomeimag.ToString.ToUpper() Then nomeimag = risultato
ListView1.Items.Add(risultato)
Dim originalX
Dim originalY
Dim bitmap As New Bitmap(FileName.Text & "\" & lvwImmagini.Items(i).SubItems(0).Text) 'path dell'immagine originale
Dim bitmap1 As New Bitmap(FileName.Text & "\" & lvwImmagini.Items(i).SubItems(0).Text) 'path dell'immagine originale
Dim larghezza As Integer = 140 'larghezza nuova immagine
Dim altezza As Integer = 105 'altezza nuova immagine
Dim nuova_immagine As New Bitmap(larghezza, altezza)
Dim temp As Graphics = Graphics.FromImage(nuova_immagine)
originalX = bitmap1.Width
originalY = bitmap1.Height
Dim altezza1 As Integer
Dim larghezza1 As Integer
If originalX > originalY Then
larghezza1 = "1920" 'larghezza nuova immagine
altezza1 = "1280" 'altezza nuova immagine
Else
larghezza1 = "1280" 'larghezza nuova immagine
altezza1 = "1920" 'altezza nuova immagine
End If
Dim nuova_immagine1 As New Bitmap(larghezza1, altezza1)
Dim temp1 As Graphics = Graphics.FromImage(nuova_immagine1)
temp1.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
temp1.DrawImage(bitmap1, New Rectangle(0, 0, larghezza1, altezza1), New Rectangle(0, 0, bitmap.Width, bitmap.Height), GraphicsUnit.Pixel)
temp.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
temp.DrawImage(bitmap, New Rectangle(0, 0, larghezza, altezza), New Rectangle(0, 0, bitmap.Width, bitmap.Height), GraphicsUnit.Pixel)
nuova_immagine.Save("da_importare\miniature\" & risultato, System.Drawing.Imaging.ImageFormat.Jpeg) 'path dove salvare l'immagine ridimensionata
nuova_immagine1.Save("da_importare\grandi\" & risultato, System.Drawing.Imaging.ImageFormat.Jpeg) 'path dove salvare l'immagine ridimensionata
sw.WriteLine(risultato)
contafotocaricate.Text = "Sto caricando le foto selezionate..Attendere " & i + 1 & "/" & contaimag.Text
temp.Dispose()
bitmap.Dispose()
nuova_immagine.Dispose()
temp1.Dispose()
bitmap1.Dispose()
nuova_immagine1.Dispose()
temp.Dispose()
bitmap.Dispose()
nuova_immagine.Dispose()
End If
Next