■ Image 클래스에서 BitmapSource 객체를 구하는 방법을 보여준다.
▶ Image 클래스 : BitmapSource 객체 구하기 예제 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 |
using System.Windows.Controls; using System.Windows.Media.Imaging; // ... Image image; // ... BitmapSource bitmapSource = GetBitmapSource(image); |
▶ Image 클래스 : BitmapSource 객체 구하기 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
using System.Windows; using System.Windows.Controls; using System.Windows.Media; using System.Windows.Media.Imaging; #region 비트맵 소스 구하기 - GetBitmapSource(image) /// <summary> /// 비트맵 소스 구하기 /// </summary> /// <param name="image">이미지</param> /// <returns>비트맵 소스</returns> public BitmapSource GetBitmapSource(Image image) { BitmapSource bitmapSource = image.Source as BitmapSource; if(bitmapSource != null) { return bitmapSource; } RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap ( (int)image.ActualWidth, (int)image.ActualHeight, 96, 96, PixelFormats.Pbgra32 ); DrawingVisual drawingVisual = new DrawingVisual(); using(DrawingContext drawingContext = drawingVisual.RenderOpen()) { drawingContext.DrawImage(image.Source, new Rect(new Point(0, 0), new Size(image.ActualWidth, image.ActualHeight))); } renderTargetBitmap.Render(drawingVisual); return renderTargetBitmap; } #endregion |