CBitmapEx.h
上传用户:zhaobiao
上传日期:2013-10-27
资源大小:92k
文件大小:1k
源码类别:

OpenCV

开发平台:

Visual C++

  1. // CBITMAPEX.H
  2. // CBitmap extention
  3. //
  4. //
  5. //___________________________________________________________________________________________
  6. #define IMAGEWIDTH(lpd) ((LPBITMAPINFOHEADER)lpd)->biWidth
  7. #define IMAGEHEIGHT(lpd) ((LPBITMAPINFOHEADER)lpd)->biHeight
  8. #define IMAGEBITS(lpd) ((LPBITMAPINFOHEADER)lpd)->biBitCount
  9. #define IMAGEDATA(lpd) (((LPBYTE)lpd) + (((LPBITMAPINFOHEADER)lpd)->biSize))
  10. #ifndef _CBITMAPEX_INCL
  11. #define _CBITMAPEX_INCL
  12. class CBitmapEx : public CBitmap
  13. {
  14. public:
  15. CBitmapEx();
  16. ~CBitmapEx();
  17. //load&save DDB
  18. BOOL Open(LPCSTR filename, LPCSTR DialogTitle=NULL);
  19. BOOL Save(LPCSTR filename, LPCSTR DialogTitle=NULL);
  20. void BitBlt(CDC *dc_to, POINT at, DWORD rop=SRCCOPY);
  21. void StretchBlt(CDC *dc_to, CRect to, DWORD rop=SRCCOPY);
  22. CSize  GetSize();
  23. BOOL  CreateMono(int dx, int dy);
  24. BOOL  CreateColor(int dx, int dy);
  25. BOOL CreateFromDib(LPBITMAPINFO lpBi);
  26. BOOL CopyRect(CBitmap& bmp, CRect& rc);
  27. HANDLE DibFromBitmap();
  28. CDC *BegingModify();
  29. void EndModify();
  30. static HANDLE DibFromBitmap(HBITMAP);
  31. static DWORD DibImageSize(HANDLE hDIB);
  32. protected:
  33. CDC _modDC;
  34. CBitmap *_modBMP;
  35. };
  36. #endif //_RBITMAP_INCL