none
Obtenir l'extension d'une image RRS feed

  • Question

  • Bonjour, je suis un débutant avancé et je sais enregistrer des images (rien de spécial, je ne me vante pas du tout).

        Sub saveImage(imageToSave As Image, imageFile As String, imageName As String)
    
            If imageToSave IsNot Nothing Then
    
                ' Sauve l'image
    
                Try
    
                        Using file = IO.File.OpenRead(imageFile)
    
                            imageToSave.Save(file, saveImageFormat)
    
                        End Using
    
                    Catch ex As System.IO.IOException
    
                        ShowError(imageName, ex)
    
    
                    Catch ex As System.Runtime.InteropServices.ExternalException
    
                        ShowError(imageName, ex)
    
                    End Try
    
                End If
    
        End Sub

    Dans cet extrait de mon code, la variable saveImageFormat est égale à System.Drawing.ImageFormat.Png et la fonction ShowError montre un message affichant l'erreur.

    Je voudrais savoir comment détecter l'extension de l'image (.gif par exemple) pour pouvoir l'enregistrer dans ce même format. (La variable saveImageFormat sera donc remplacé par le format de l'image).

    Merci pour toutes vos réponses.

    mercredi 20 juin 2018 19:35

Réponses

Toutes les réponses

  • Le format est donné par imageToSave.RawFormat

    Par ex,

    If imageToSave.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Gif) Then
              ' Code
    End If

    jeudi 21 juin 2018 08:57
  • Merci, j'ai pu modifier le code et ça marche.

    Sub saveImage(imageToSave As Image, imageFile As String, imageName As String)
    
            If imageToSave IsNot Nothing Then
    
                ' Sauve l'image
    
                Try
    
                    Using file = IO.File.OpenWrite(imageFile)
    
                        If imageToSave.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Gif) Then
    
                            imageToSave.Save(file, System.Drawing.Imaging.ImageFormat.Gif)
    
                        Else
    
                            imageToSave.Save(file, System.Drawing.Imaging.ImageFormat.Png)
    
                        End If
    
                    End Using
    
                Catch ex As System.IO.IOException
    
                        ShowError(imageName, ex)
    
    
                    Catch ex As System.Runtime.InteropServices.ExternalException
    
                        ShowError(imageName, ex)
    
                    End Try
    
                End If
    
        End Sub


    jeudi 21 juin 2018 16:32