Rubrik: Grafik und Font · Bilder und Icons | VB-Versionen: VB.NET | 10.02.06 |
Bilddatei konvertieren (VB.NET) Eine Bilddatei in ein anderes Bildformat zu konvertieren, ist unter .NET ein absolutes Kinderspiel. | ||
Autor: Dieter Otter | Bewertung: | Views: 20.171 |
www.tools4vb.de | System: WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Das Konvertieren / Speichern einer Bilddatei in ein anderes Format, bspw. JPG, TIFF, GIF etc., gestaltet sich unter .NET zum absoluten Kinderspiel
Das Bitmap-Objekt als solches stellt uns hierfür die Save-Methode zur Verfügung, die den neuen Dateinamen sowie das neue Bildformat als Parameter erwartet.
Nachfolgende Funktion konvertiert eine auf dem Datenträger gespeicherte Bilddatei in ein neues Format, wobei der neue Speicherort und Bildname optional angegeben werden können. Wird kein neuer Dateiname angegeben, wird das Bild autom. im gleichen Ordner wie das Originalbild gespeichert, jedoch mit der neuen Dateierweiterung (Extension).
Imports System.Drawing.Imaging ... ' Bilddatei in neuem Format speichern Public Function SavePictureAs(ByVal sSourceFile As String, _ ByVal nFormat As System.Drawing.Imaging.ImageFormat, _ Optional ByVal sDestFile As String = "") As Boolean If sDestFile.Length = 0 Then ' Zieldatei unter gleichem Namen ins gleiche Verzeichnis ' speichern, jedoch mit entsprechend anderer Dateierweiterung sDestFile = System.IO.Path.GetDirectoryName(sSourceFile) If Not sDestFile.EndsWith("\") Then sDestFile &= "\" sDestFile &= System.IO.Path.GetFileNameWithoutExtension(sSourceFile) & _ "." & nFormat.ToString.ToLower End If Try ' Bild-Objekt aus Originalbilddatei erzeugen Dim oBitmap As New Bitmap(sSourceFile) ' Bild-Objekt in neuem Format speichern oBitmap.Save(sDestFile, nFormat) Return True Catch Return False End Try End Function ...
Aufrufbeispiele:
' BMP-Bild im gleichen Verzeichnis ins GIF-Format konvertieren SavePictureAs("d:\bild1.bmp", ImagFormat.Gif)
' JPG-Bild in neuen Ordner ins PNG-Format konvertieren SavePictureAs("d:\bild1.jpg", ImagFormat.Png, "d:\neu\bild1.png")