System.Drawing.Bitmap到WPF BitmapImage的高效率轉換
WPF應用程式通常使用System.Windows.Media.Imaging.BitmapImage
類別處理影像。然而,當處理現有的System.Drawing.Bitmap
物件時,將其轉換為BitmapImage
是一個很有用的步驟。此轉換允許這些圖像在WPF應用程式中顯示和操作。
將System.Drawing.Bitmap
轉換為BitmapImage
最有效的方法是使用MemoryStream
。以下是詳細步驟:
<code class="language-csharp">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(); }</code>
MemoryStream
對象,並使用System.Drawing.Bitmap
的Save()
方法將點陣圖以所需的影像格式(例如,ImageFormat.Png
)儲存到記憶體流中。 Position
設定回開頭(0),以便從中讀取。 BitmapImage
物件。 BeginInit()
和EndInit()
方法初始化和完成BitmapImage
。 BitmapImage
的StreamSource
屬性設為記憶體流,以便從流中載入映像。 CacheOption
設定為BitmapCacheOption.OnLoad
,以便快取影像以加快後續存取速度。 EndInit()
結束BitmapImage
的初始化。 完成此轉換後,BitmapImage
物件可以像任何其他WPF影像資源一樣使用,例如在Image
控制項中顯示它或執行影像操作。
以上是如何有效地將System.Drawing.BitMap轉換為WPF位示意圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!