Introduction
Whenever we encounter any Image intensive application, there are lot of scenario where we require some sort of runtime image manipulation. I came across number of such scenarios, when I was working on an Image Editing Application for Windows Phone 8. At bottom level its very important to get Bitmap-To-Memory Stream and Memory Stream-to-Bitmap conversions.
Background
For Image Editor application, I extensively used Nokia Imaging SDK, which is very sophisticated library and provides tons of extensions/functions for Image intensive task, Please give it a try as you can use it number of different scenarios. It runs on native code and often very efficient.
Using the code
Required Namespace
Imports System.Windows.Media.Imaging
Code for converting
BitmapImage
to Stream
.
Private Function GetStreamFromBitmap(bitmapImage As BitmapImage) As IO.Stream
Try
Dim writeBMP As New WriteableBitmap(bitmapImage)
Dim memStream As New IO.MemoryStream
writeBMP.SaveJpeg(memStream, bitmapImage.PixelWidth, bitmapImage.PixelHeight, 0, 100)
return memStream
Catch ex As Exception
MesssageBox.Show("Error Converting Bitmap To Stream")
End Try
End Function
Code for converting Stream To Bitmap.
Private Function GetBitmapFromStream(MemStream As IO.Stream) As BitmapImage
Try
Dim bitmapImage New BitmapImage
bitmapImage.SetSource(MemStream)
Return bitmapImage
Catch ex As Exception
MesssageBox.Show("Error Converting Stream To Bitmap")
End Try
End Function
Points of Interest
Now as I can use this function for number of different purpose to
fulfill one's image editing scenarios.
History
- 11:59 AM 10/8/2013 First edit.