Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Vb.NEt Ridimensione Jpg - Qualità

    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

  2. #2
    HO sbagliato sezione, potete cancellarmi il post che a me non lo permette!!
    Ora riposto nella sezione giusta...
    grazie e scusate

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,324

    Moderazione

    Originariamente inviato da ToNyLuCa
    HO sbagliato sezione, potete cancellarmi il post che a me non lo permette!!
    Ora riposto nella sezione giusta...
    grazie e scusate
    Quando si sbaglia sezione, si segnala la discussione al moderatore e si attende lo spostamento.
    Tienilo a mente per il futuro.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.