Atlanta Custom Software Development 

 
   Search        Code/Page
 

User Login
Email

Password

 

Forgot the Password?
Services
» Web Development
» Maintenance
» Data Integration/BI
» Information Management
Programming
  Database
Automation
OS/Networking
Graphics
Links
Tools
» Regular Expr Tester
» Free Tools

Retrieving Bitmap properties

Total Hit ( 4184)

Rate this article:     Poor     Excellent 

 Submit Your Question/Comment about this article

Rating


 


The Picture box control does not directly expose any property that returns information on the bitmap currently loaded. You can retrieve this information by calling the GetObject API function, passing it the handle of the bitmap. This value is the Handle property of the IPictureDisp object (which is also the default property for the IPictureDisp object).Here is a procedure that you can easily reuse in all your applications:

Click here to copy the following block
Private Type BITMAP
  bmType As Long     ' this must be zero
  bmWidth As Long    ' bitmap width
  bmHeight As Long    ' bitmap height
  bmWidthBytes As Long  ' bytes in horiz raster line
  bmPlanes As Integer  ' number of color planes
  bmBitsPixel As Integer ' number of bits per pixel
  bmBits As Long     ' address of pixel data in memory
End Type
Private Declare Function GetObjectAPI Lib "gdi32" Alias "GetObjectA" (ByVal _
  hObject As Long, ByVal nCount As Long, lpObject As Any) As Long

' NOTE: VB4 users should convert the last two argument to As Variant

Sub GetBitmapInfo(ByVal handle As Long, width As Long, height As Long, _
  Optional colorPlanes As Long, Optional bitsPerPixel As Long )
  Dim bmp As BITMAP
  GetObjectAPI handle, Len(bmp), bmp
  width = bmp.bmWidth
  height = bmp.bmHeight
  colorPlanes = bmp.bmPlanes
  bitsPerPixel = bmp.bmBitsPixel
End Sub

Note that the last two arguments are optional, so you can ask for bitmap size only. Here is how you show this information:

Click here to copy the following block
GetBitmapInfo Picture1.Picture, width, height, colorPlanes, bitsPerPixel
Label1 = "Width = " & width & vbCrLf & "Height = " & height & vbCrLf & _
  "Color Planes = " & colorPlanes & vbCrLf & "Bits per Pixel = " & _
  bitsPerPixel


Submitted By : Nayan Patel  (Member Since : 5/26/2004 12:23:06 PM)

Job Description : He is the moderator of this site and currently working as an independent consultant. He works with VB.net/ASP.net, SQL Server and other MS technologies. He is MCSD.net, MCDBA and MCSE. In his free time he likes to watch funny movies and doing oil painting.
View all (893) submissions by this author  (Birth Date : 7/14/1981 )


Home   |  Comment   |  Contact Us   |  Privacy Policy   |  Terms & Conditions   |  BlogsZappySys

© 2008 BinaryWorld LLC. All rights reserved.