Heim >Backend-Entwicklung >C++ >Wie konvertiere ich ein System.Drawing.bitmap in ein WPF -Bitmapimage?

Wie konvertiere ich ein System.Drawing.bitmap in ein WPF -Bitmapimage?

Susan Sarandon
Susan SarandonOriginal
2025-01-28 01:11:07846Durchsuche

How Do I Convert a System.Drawing.Bitmap to a WPF BitmapImage?

Ein System konvertieren. In diesem Artikel wird erläutert, wie sie Bilder aus dem System nahtlos integrieren können. Disketten (häufig in Windows -Formularen verwendet) in eine WPF -Anwendung. Der Schlüssel besteht darin, ein System zu konvertieren.

Die Lösung: Verwenden von MemoryStream

Die effizienteste Methode verwendet ein als Vermittler, um die Bilddaten zu übertragen.

MemoryStream Code Beispiel:

Schritt-für-Schritt-Aufschlüsselung:
<code class="language-csharp">using (MemoryStream memory = new MemoryStream()) {
    bitmap.Save(memory, ImageFormat.Png); // Save as PNG for broad compatibility
    memory.Position = 0; // Reset stream position
    BitmapImage bitmapImage = new BitmapImage();
    bitmapImage.BeginInit();
    bitmapImage.StreamSource = memory;
    bitmapImage.CacheOption = BitmapCacheOption.OnLoad; // Optimize caching
    bitmapImage.EndInit();
}</code>

Erstellen Sie einen Speicherstream:
    a
  1. fungiert als temporärer Speicher für die Bilddaten. MemoryStream Speichern Sie die Bitmap:
  2. Die
  3. (bezeichnet als ) wird im Format in das System.Drawing.Bitmap gespeichert. PNG ist ein weithin unterstütztes Format, das die Kompatibilität sicherstellt. bitmap MemoryStream ImageFormat.Png Stream -Position zurücksetzen:
  4. Die
  5. Zeile setzt die Position des Streams auf den Anfang zurück und bereitet sie auf das Lesen durch die . vor memory.Position = 0; BitmapImage Erstellen Sie ein Bitmapimage:
  6. Ein neues
  7. Objekt wird erstellt, um das WPF-kompatible Bild zu halten. BitmapImage Beginnen Sie Initialisierung:
  8. Startet den Initialisierungsprozess. bitmapImage.BeginInit(); Stream Source festlegen:
  9. Das
  10. wird als für die zugewiesen. MemoryStream StreamSource BitmapImage Option Cache einstellen:
  11. Optimiert das Caching, Verbesserung der Leistung. BitmapCacheOption.OnLoad Endinitialisierung:
  12. vervollständigt die Initialisierung und ist die bereit für die Verwendung in Ihrer WPF -Anwendung. bitmapImage.EndInit(); bitmapImage Dieser Vorgang sorgt für eine reibungslose Konvertierung, sodass Sie leicht System anzeigen können. Bitmaps in Ihrer WPF -Umgebung.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich ein System.Drawing.bitmap in ein WPF -Bitmapimage?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn