Detect Image is upside Down
The following function may used to detect if an image is upside down or not.
The function will check the BitmapData.Stride value and returned value is of a Boolean type and if the returned value of BitmapData.Stride is greater than zero...then the bitmap is upside down. For further details about BitmapData Class, please check the link Link
Function:
Private Function IsUpSideDownBitmap(originalBitmap As Bitmap) As Boolean
Dim bmp As Bitmap = CType(originalBitmap.Clone(), Bitmap)
Dim rect As Rectangle = New Rectangle(0, 0, bmp.Width, bmp.Height)
Dim bmpData As Imaging.BitmapData = bmp.LockBits(rect, Imaging.ImageLockMode.ReadOnly, Imaging.PixelFormat.Format32bppArgb)
Return originalBitmap IsNot Nothing AndAlso bmpData.Stride > 0
End Function
Usage:
' Define the imageDim bmp As New Bitmap(My.Resources._29322)
' pass the image to the function
If IsUpSideDownBitmap(bmp) Then
' If returned value is True, then draw the image or
' do something like rotate the image
' the image will drawn becuase the function return True
e.Graphics.DrawImage(bmp, 0, 0)
End If
Enjoy it.......
Comments
Post a Comment