Accueil > > > CONVERTISSEUR D'IMAGES AVEC LISTVIEW
CONVERTISSEUR D'IMAGES AVEC LISTVIEW
Information sur la source
Description
Sert a convertir différents type d'images (png, gif, bmp, jpg, wmf, tiff ect..) en d'autres formats. Exemple d'isntallation aussi.
Source
- Public Class frmConvertionImage
- Inherits System.Windows.Forms.Form
-
- Const EOF As Integer = -1
-
- Dim TYPES_IMAGES As String() = {".bmp", ".gif", ".emf", ".jpg", ".png", ".tiff", ".wmf"}
- Dim NomFormat As String() = {"Bitmap (BMP)", "Join Phjoto Expert Group (JPG)", "Portable Network Graphic (PNG)", "Tag Image File Format (TIFF)", "Windows Meta File (WMF)", "CompuServ Image (GIF)", "Enhanced Windows (EMF)"}
- Dim Compression As String() = {"Aucune", "Très Bonne", "Bonne", "Moyenne", "Faible", "Excellente", "Moyenne"}
-
- Dim strNomFichier As String
- Dim strFichierFullPath As String
- Dim Extension As String
- Dim ConfigFile As String
-
-
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
-
- Dim FileInfo As New IO.FileInfo(Application.ExecutablePath)
-
- 'Path du fichier de configuration qui contient le dernier type d'image choisi
- 'ainsi que le dernier choix garder ou pas l'image originale.
- ConfigFile = String.Concat(FileInfo.DirectoryName, "\", "Convert.cfg")
-
- 'Lecture des arguments, ex: Convert.exe c:\bmp\image.bmp
- Dim Command As String() = Environment.GetCommandLineArgs
-
- Dim ioLecture As IO.StreamReader = IO.File.OpenText(ConfigFile)
- Dim Choix As Boolean
- Dim intSelection As Integer
- Dim I As Integer
-
- 'Transforme le curseur en petit sablier
- Me.Cursor = System.Windows.Forms.Cursors.WaitCursor
-
- 'Ajoute tous les noms de format dans la listview
- For I = 0 To NomFormat.Length - 1 Step 1
- lsvTypesImage.Items.Add(NomFormat(I))
- lsvTypesImage.Items(I).SubItems.Add(Compression(I))
- lsvTypesImage.Items(I).ImageIndex = 0
- Next I
-
- 'Établi l'ordre alphabétique
- lsvTypesImage.Sorting = SortOrder.Ascending
-
- 'Lit les lignes si la lecture n'est pas rendue a la fin de fichier (EOF)
- 'Choix Garder/Supprimer
- If ioLecture.Peek <> EOF Then
- Choix = ioLecture.ReadLine()
- Else
- Choix = False
- End If
-
- 'Choix du format précédant
- If ioLecture.Peek <> EOF Then
- intSelection = CInt(ioLecture.ReadLine())
- Else
- intSelection = 0
- End If
-
- 'Fermeture du fichier en lecture
- ioLecture.Close()
-
- 'Sélectionne la ligne correspondant au format choisi la derniere fois
- lsvTypesImage.Items(intSelection).Selected = True
-
- 'Coche l'option garder/supprimer choisie la derniere fois
- radSupprimer.Checked = Choix
- radGarder.Checked = Not Choix
-
- 'Si un argument n'a pas été donné lors de l'appel du .exe
- If Command.Length = 1 Then
-
- 'Restreint l'utilisateur a choisir que ces types de fichiers comme
- 'fichier a convertir
- OpenFileDialog1.Filter = "Tous les types d'images suppotés|*.bmp;*.gif;*.emf;*.jpg;*.jpeg;*.png;*.tiff;*.wmf|Bitmap (BMP)|*.bmp|CompuServ Image (GIF)|*.gif|Enhanced Windows (EMF)|*.emf|Join Phjoto Expert Group (JPG)|*.jpg;*.jpeg|Portable Network Graphic (PNG)|*.png|Tag Image File Format (TIFF)|*.tiff|Windows Meta File (WMF)|*.wmf"
-
- 'Ouvre la fenetre d'ouverture de fichier
- OpenFileDialog1.ShowDialog()
-
- 'Saisie du nom de fichier
- strFichierFullPath = OpenFileDialog1.FileName()
-
- 'Si aucun fichier n'a été sélectionnée, Fin du programme
- If strFichierFullPath = String.Empty Then
- Me.Close()
- Exit Sub
- End If
-
- Else
-
- 'Si un argument a été donnée, cet argument est le fichier a convertir
- strFichierFullPath = Command(1)
-
- End If
-
- 'Sert a obtenir des information sur le fichier
- Dim FileInfo2 As New IO.FileInfo(strFichierFullPath)
-
- Extension = FileInfo2.Extension
- strNomFichier = FileInfo2.Name
-
- lblNom.Text = String.Concat("Nom de l'image à convertir : ", strNomFichier)
-
- 'Rétabli le curseur de Windows par défault
- Me.Cursor = System.Windows.Forms.Cursors.Default
-
- End Sub
-
-
- Private Sub btnAnnuler_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnnuler.Click
- 'Fermeture du programme
- Me.Close()
- End Sub
-
-
- Private Sub Convertir()
-
- 'Si un item a été sélectionné
- If lsvTypesImage.SelectedIndices.Count > 0 Then
-
- 'Curseur Sablier
- Me.Cursor = System.Windows.Forms.Cursors.WaitCursor
-
- 'Sauvegarde des options (Types de fichier et Garder/Supprimer)
- Dim ioEcriture As IO.StreamWriter = IO.File.CreateText(ConfigFile)
- ioEcriture.WriteLine(radSupprimer.Checked)
- ioEcriture.WriteLine(lsvTypesImage.SelectedIndices(0))
- ioEcriture.WriteLine("caca")
- ioEcriture.Close()
-
-
- Dim Convertisseur As New System.Drawing.Bitmap(strFichierFullPath)
- Dim NouvelleExtension As String = TYPES_IMAGES(lsvTypesImage.SelectedIndices(0))
- Dim strNouveauFichier As String = String.Concat(strNomFichier.Substring(0, strNomFichier.LastIndexOf(".")), NouvelleExtension)
-
- 'Vérification si le ficheir existe déja
- If NouvelleExtension = Extension Or IO.File.Exists(strNouveauFichier) Then
- MsgBox("Le fichier existe déjà. Choissisez un autre format d'image.", MsgBoxStyle.Critical, "Erreure lors de la création du fichier.")
- Me.Cursor = System.Windows.Forms.Cursors.Default
-
- 'Si le fichier existe déja, la procédure ne se poursuit pas
- Exit Sub
- End If
-
- 'Converti le fichier en un autre format selon l'extension cible
- Select Case NouvelleExtension
- Case ".jpg"
- Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Jpeg)
- Case ".tiff"
- Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Tiff)
- Case ".wmf"
- Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Wmf)
- Case ".gif"
- Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Gif)
- Case ".png"
- Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Png)
- Case ".bmp"
- Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Bmp)
- Case ".emf"
- Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Emf)
- End Select
-
- 'Libère les ressources utilisées par Convertisseur
- Convertisseur.Dispose()
-
- 'Supprime l'image originale si l'option de la supprimer est activée
- If radSupprimer.Checked Then
- Kill(strFichierFullPath)
- End If
-
-
- End If
- btnAppliquer.Enabled = False
- 'Rétabli le curseur
- Me.Cursor = System.Windows.Forms.Cursors.Default
-
- End Sub
-
- Private Sub lsvTypesImage_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles lsvTypesImage.DoubleClick
- Convertir()
- End Sub
-
- Private Sub btnOk_CLick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click
- Convertir()
- Me.Close()
- End Sub
-
- Private Sub lsvTypesImage_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lsvTypesImage.SelectedIndexChanged
- btnAppliquer.Enabled = True
- End Sub
-
- Private Sub btnAppliquer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAppliquer.Click
- Convertir()
- End Sub
- End Class
-
Public Class frmConvertionImage
Inherits System.Windows.Forms.Form
Const EOF As Integer = -1
Dim TYPES_IMAGES As String() = {".bmp", ".gif", ".emf", ".jpg", ".png", ".tiff", ".wmf"}
Dim NomFormat As String() = {"Bitmap (BMP)", "Join Phjoto Expert Group (JPG)", "Portable Network Graphic (PNG)", "Tag Image File Format (TIFF)", "Windows Meta File (WMF)", "CompuServ Image (GIF)", "Enhanced Windows (EMF)"}
Dim Compression As String() = {"Aucune", "Très Bonne", "Bonne", "Moyenne", "Faible", "Excellente", "Moyenne"}
Dim strNomFichier As String
Dim strFichierFullPath As String
Dim Extension As String
Dim ConfigFile As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim FileInfo As New IO.FileInfo(Application.ExecutablePath)
'Path du fichier de configuration qui contient le dernier type d'image choisi
'ainsi que le dernier choix garder ou pas l'image originale.
ConfigFile = String.Concat(FileInfo.DirectoryName, "\", "Convert.cfg")
'Lecture des arguments, ex: Convert.exe c:\bmp\image.bmp
Dim Command As String() = Environment.GetCommandLineArgs
Dim ioLecture As IO.StreamReader = IO.File.OpenText(ConfigFile)
Dim Choix As Boolean
Dim intSelection As Integer
Dim I As Integer
'Transforme le curseur en petit sablier
Me.Cursor = System.Windows.Forms.Cursors.WaitCursor
'Ajoute tous les noms de format dans la listview
For I = 0 To NomFormat.Length - 1 Step 1
lsvTypesImage.Items.Add(NomFormat(I))
lsvTypesImage.Items(I).SubItems.Add(Compression(I))
lsvTypesImage.Items(I).ImageIndex = 0
Next I
'Établi l'ordre alphabétique
lsvTypesImage.Sorting = SortOrder.Ascending
'Lit les lignes si la lecture n'est pas rendue a la fin de fichier (EOF)
'Choix Garder/Supprimer
If ioLecture.Peek <> EOF Then
Choix = ioLecture.ReadLine()
Else
Choix = False
End If
'Choix du format précédant
If ioLecture.Peek <> EOF Then
intSelection = CInt(ioLecture.ReadLine())
Else
intSelection = 0
End If
'Fermeture du fichier en lecture
ioLecture.Close()
'Sélectionne la ligne correspondant au format choisi la derniere fois
lsvTypesImage.Items(intSelection).Selected = True
'Coche l'option garder/supprimer choisie la derniere fois
radSupprimer.Checked = Choix
radGarder.Checked = Not Choix
'Si un argument n'a pas été donné lors de l'appel du .exe
If Command.Length = 1 Then
'Restreint l'utilisateur a choisir que ces types de fichiers comme
'fichier a convertir
OpenFileDialog1.Filter = "Tous les types d'images suppotés|*.bmp;*.gif;*.emf;*.jpg;*.jpeg;*.png;*.tiff;*.wmf|Bitmap (BMP)|*.bmp|CompuServ Image (GIF)|*.gif|Enhanced Windows (EMF)|*.emf|Join Phjoto Expert Group (JPG)|*.jpg;*.jpeg|Portable Network Graphic (PNG)|*.png|Tag Image File Format (TIFF)|*.tiff|Windows Meta File (WMF)|*.wmf"
'Ouvre la fenetre d'ouverture de fichier
OpenFileDialog1.ShowDialog()
'Saisie du nom de fichier
strFichierFullPath = OpenFileDialog1.FileName()
'Si aucun fichier n'a été sélectionnée, Fin du programme
If strFichierFullPath = String.Empty Then
Me.Close()
Exit Sub
End If
Else
'Si un argument a été donnée, cet argument est le fichier a convertir
strFichierFullPath = Command(1)
End If
'Sert a obtenir des information sur le fichier
Dim FileInfo2 As New IO.FileInfo(strFichierFullPath)
Extension = FileInfo2.Extension
strNomFichier = FileInfo2.Name
lblNom.Text = String.Concat("Nom de l'image à convertir : ", strNomFichier)
'Rétabli le curseur de Windows par défault
Me.Cursor = System.Windows.Forms.Cursors.Default
End Sub
Private Sub btnAnnuler_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnnuler.Click
'Fermeture du programme
Me.Close()
End Sub
Private Sub Convertir()
'Si un item a été sélectionné
If lsvTypesImage.SelectedIndices.Count > 0 Then
'Curseur Sablier
Me.Cursor = System.Windows.Forms.Cursors.WaitCursor
'Sauvegarde des options (Types de fichier et Garder/Supprimer)
Dim ioEcriture As IO.StreamWriter = IO.File.CreateText(ConfigFile)
ioEcriture.WriteLine(radSupprimer.Checked)
ioEcriture.WriteLine(lsvTypesImage.SelectedIndices(0))
ioEcriture.WriteLine("caca")
ioEcriture.Close()
Dim Convertisseur As New System.Drawing.Bitmap(strFichierFullPath)
Dim NouvelleExtension As String = TYPES_IMAGES(lsvTypesImage.SelectedIndices(0))
Dim strNouveauFichier As String = String.Concat(strNomFichier.Substring(0, strNomFichier.LastIndexOf(".")), NouvelleExtension)
'Vérification si le ficheir existe déja
If NouvelleExtension = Extension Or IO.File.Exists(strNouveauFichier) Then
MsgBox("Le fichier existe déjà. Choissisez un autre format d'image.", MsgBoxStyle.Critical, "Erreure lors de la création du fichier.")
Me.Cursor = System.Windows.Forms.Cursors.Default
'Si le fichier existe déja, la procédure ne se poursuit pas
Exit Sub
End If
'Converti le fichier en un autre format selon l'extension cible
Select Case NouvelleExtension
Case ".jpg"
Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Jpeg)
Case ".tiff"
Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Tiff)
Case ".wmf"
Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Wmf)
Case ".gif"
Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Gif)
Case ".png"
Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Png)
Case ".bmp"
Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Bmp)
Case ".emf"
Convertisseur.Save(strNouveauFichier, System.Drawing.Imaging.ImageFormat.Emf)
End Select
'Libère les ressources utilisées par Convertisseur
Convertisseur.Dispose()
'Supprime l'image originale si l'option de la supprimer est activée
If radSupprimer.Checked Then
Kill(strFichierFullPath)
End If
End If
btnAppliquer.Enabled = False
'Rétabli le curseur
Me.Cursor = System.Windows.Forms.Cursors.Default
End Sub
Private Sub lsvTypesImage_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles lsvTypesImage.DoubleClick
Convertir()
End Sub
Private Sub btnOk_CLick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click
Convertir()
Me.Close()
End Sub
Private Sub lsvTypesImage_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lsvTypesImage.SelectedIndexChanged
btnAppliquer.Enabled = True
End Sub
Private Sub btnAppliquer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAppliquer.Click
Convertir()
End Sub
End Class
Conclusion
Si vous voulez, vous pouvez compiler le setup qui vient avec le projet et si vous l'installez, vous aurez un item ajouté au menu contextuel qui s'affiche lorsque vous cliquez sur le bouton de droit sur une image. Vous pourrez alors convertir vos images comme si cette fonction serait intégrée dans Windows.
Note : Convert.cfg doit etre dans le répertoire de l'éxécutable (J'aurais pu arranger ca...)
C'est mon premier projet VB.NET qui sert a quelque chose, alors soyez un peu indulgents.
Fichier Zip
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Conversion de bmp en jpg, gif, png ou tiff... [ par ju ]
Bonjour, je cherche un moyen de convertir des images bmp en jpg, gif, png ou tiff(1 de ces 4 formats pour pouvoir les transformer en pdf grace à pdfli
format d'images supportés par VB5 [ par ddp ]
Tout d'abord félicitations pour cet excellent site !Comment faire pour afficher des images autres que BMP,JPG,GIF,WMF ? Merci d'avance ! ddp
Convertir données num au format texte dans un format numérique [ par Melinda ]
slt, j'ai effectuer l'importation d'un fichier .txt sous Excel.j'ai des données nuérique mais celles qui sont décimales sont représentées comme des do
Image png et elastique [ par pirate75000 ]
Salut je cherche une solution pour ouvrir des images au format png dans un pictureboxSi vous avez d'autre format pour les pictureboxdit le moi merciTo
Lire et sauvegarder au format PNG [ par pirate75000 ]
je cherche un moyen de charger dans un picturebox des images au format pngainsi que sauvegarder des picturebox au format PNG en vb6
convertir BMP en JPG [ par psykokouak ]
slt,je cherche le code pour transfomer une serie de bmp dans un répertoire en jpg .. (ou meme envoyé c bmp dans un picturebox pour les transformer de
convertir en format pdf [ par fabien140 ]
j'ai un pb lorsque je veux convertir plusieurs fichiers word à la suite au format pdf à l'aide de l'imprimante virtuelle acrobat distiller.si j'en con
Convertir la date de installdate en format dword en format date lisible ? [ par rastapopey ]
Voila, je souhaite recuperer la date d'install d'un poste en lisant la valeur de la date d'install dans la registrySOFTWARE\MICROSOFT\WINDOWS NT\CURRE
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|