Heim > Backend-Entwicklung > C++ > Wie kann ich ein System effizient umwandeln.

Wie kann ich ein System effizient umwandeln.

Patricia Arquette
Freigeben: 2025-01-28 01:21:12
Original
494 Leute haben es durchsucht

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

Effiziente Konvertierung von System.Drawing.Bitmap in WPF BitmapImage

WPF-Anwendungen verwenden normalerweise die Klasse System.Windows.Media.Imaging.BitmapImage, um Bilder zu verarbeiten. Wenn Sie jedoch mit vorhandenen System.Drawing.Bitmap-Objekten arbeiten, ist deren Konvertierung in BitmapImage ein nützlicher Schritt. Durch diese Transformation können diese Bilder in WPF-Anwendungen angezeigt und bearbeitet werden.

Der effizienteste Weg, System.Drawing.Bitmap in BitmapImage umzuwandeln, ist die Verwendung von MemoryStream. Hier sind die detaillierten Schritte:

using(MemoryStream memory = new MemoryStream())
{
    bitmap.Save(memory, ImageFormat.Png);
    memory.Position = 0;
    BitmapImage bitmapImage = new BitmapImage();
    bitmapImage.BeginInit();
    bitmapImage.StreamSource = memory;
    bitmapImage.CacheOption = BitmapCacheOption.OnLoad;
    bitmapImage.EndInit();
}
Nach dem Login kopieren
  1. Erstellen Sie ein MemoryStream-Objekt und verwenden Sie die System.Drawing.Bitmap-Methode von Save(), um die Bitmap in einem Speicherstream im gewünschten Bildformat zu speichern (z. B. ImageFormat.Png).
  2. Setzt das Position des Speicherstreams auf den Anfang (0) zurück, von dem aus gelesen werden soll.
  3. Erstellt ein BitmapImage-Objekt.
  4. wird mit den Methoden BeginInit() und EndInit() BitmapImage initialisiert und abgeschlossen.
  5. Setzen Sie das BitmapImage-Attribut von StreamSource auf einen Speicherstream, um das Bild aus dem Stream zu laden.
  6. Setzen Sie CacheOption auf BitmapCacheOption.OnLoad, damit das Bild für einen schnelleren späteren Zugriff zwischengespeichert wird.
  7. Verwenden Sie EndInit(), um die Initialisierung von BitmapImage zu beenden.

Nach Abschluss dieser Konvertierung kann das BitmapImage-Objekt wie jede andere WPF-Bildressource verwendet werden, z. B. um es in einem Image-Steuerelement anzuzeigen oder Bildvorgänge auszuführen.

Das obige ist der detaillierte Inhalt vonWie kann ich ein System effizient umwandeln.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage