CSDN论坛 > VC/MFC > 基础类

关于CBitmap类的问题。 [问题点数:0分]

Bbs1
本版专家分:53
结帖率 95.45%
CSDN今日推荐
Bbs6
本版专家分:8025
Bbs3
本版专家分:758
Bbs4
本版专家分:1221
Bbs1
本版专家分:98
Bbs1
本版专家分:53
Bbs2
本版专家分:188
Bbs2
本版专家分:188
匿名用户不能发表回复!
其他相关推荐
一个关于CBitMap的问题
从昨天开始就一直在调试绘图问题,当时有一个截屏函数是用来截获当前屏幕制定区域的位图存放在DC中。但是无论如何怎么截取始终都没有办法将其正确截获,接下来的位图总是出错。 DrawBmp(constCString strBmpPath, const CRect rect, const BOOL bBK,CDC *pDC)          其中的pDC用以存放截获的位图的DC.后来经过高手调试,最
一个免费的C++ Bitmap 操作类
这是一个用于C++ MFC开发的Bitmap图片操作类,在文件中叫CBitmapEx,可用于放大,缩小,翻转,过渡和其他有用的功能,有兴趣的朋友可以下载看看。 部分public method: // // void Create(long width, long height); // void Create(CBitmapEx& bitmapEx); // void Load(LPTSTR lpszBitmapFile); // void Save(LPTSTR lpszBitmapFile); // void Scale(long horizontalPercent=100, long verticalPercent=100); // void Rotate(long degrees=0, _PIXEL bgColor=_RGB(0,0,0)); // void FlipHorizontal(); // void FlipVertical(); // void MirrorLeft(); // void MirrorRight(); // void MirrorTop(); // void MirrorBottom(); // void Clear(_PIXEL clearColor=_RGB(0,0,0)); // void Negative(); // void Grayscale(); // void Sepia(long depth=34); // void Emboss(); // void Engrave(); // void Pixelize(long size=4); // void Draw(HDC hDC); // void Draw(long dstX, long dstY, long width, long height, // CBitmapEx& bitmapEx, long srcX, long srcY); // void Draw(long dstX, long dstY, long width, long height, // CBitmapEx& bitmapEx, long srcX, long srcY, long alpha); // void Draw(long dstX, long dstY, long dstWidth, long dstHeight, // CBitmapEx& bitmapEx, long srcX, long srcY, long srcWidth, long srcHeight); // void Draw(long dstX, long dstY, long dstWidth, long dstHeight, CBitmapEx& bitmapEx, // long srcX, long srcY, long srcWidth, long srcHeight, long alpha); // void DrawTransparent(long dstX, long dstY, long width, long height, // CBitmapEx& bitmapEx, long srcX, long srcY, _PIXEL transparentColor=_RGB(0,0,0)); // void DrawTransparent(long dstX, long dstY, long width, long height, // CBitmapEx& bitmapEx, long srcX, long srcY, long alpha, // _PIXEL transparentColor=_RGB(0,0,0)); // void DrawTransparent(long dstX, long dstY, long dstWidth, long dstHeight, // CBitmapEx& bitmapEx, long srcX, long srcY, long srcWidth, long srcHeight, // _PIXEL transparentColor=_RGB(0,0,0)); // void DrawTransparent(long dstX, long dstY, long dstWidth, long dstHeight, // CBitmapEx& bitmapEx, long srcX, long srcY, long srcWidth, long srcHeight, // long alpha, _PIXEL transparentColor=_RGB(0,0,0)); // LPBITMAPFILEHEADER GetFileInfo() {return &m_bfh;} // LPBITMAPINFOHEADER GetInfo() {return &m_bih;} // long GetWidth() {return m_bih.biWidth;} // long GetHeight() {return m_bih.biHeight;} // long GetPitch() {return m_iPitch;} // long GetBpp() {return m_iBpp;} // long GetPaletteEntries() {return m_iPaletteEntries;} // LPRGBQUAD GetPalette() {return m_lpPalette;} // DWORD GetSize() {return m_dwSize;} // LPBYTE GetData() {return m_lpData;} // void SetResampleMode(RESAMPLE_MODE mode=RM_NEARESTNEIGHBOUR) {m_ResampleMode = mode;} // RESAMPLE_MODE GetResampleMode() {return m_ResampleMode;} // BOOL IsValid() {return (m_lpData != NULL);} // _PIXEL GetPixel(long x, long y); // void SetPixel(long x, long y, _PIXEL pixel); //
C++/MFC-GDI绘图之CBitmap位图
一、显示资源里的位图 ①载入图片:loadbitmap ②创建设备上下文:CreateCompatibleDC ③替换设备环境位图:SelectObject ④复制位图:bitblt ⑤释放对象 ⑥释放设备上下文 示例代码: { // TODO: 在此添加控件通知处理程序代码 CBitmap mybitmap; mybitmap.LoadBitmap(IDB_BITMAP3);
HBitmap、Bitmap、CBitmap之间的区别与联系
一、术语的定义及含义: HANDLE :      是DIB的文件句柄,是表示了设备无关位图在内存中的区域存储代号,该句柄值是整数.是整个Windows编程的基础。一个句柄是指使用的一个唯一的整数值,即一个4字节(64位程序中为8字节)长的数值,来标识应用程序中的不同对象和同类中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等。 HBITMAP:
HBITMAP的复制,拷贝 与 CBitmap的复制,拷贝
HBITMAP  Cxxx::CopyBitmap(HBITMAP  hSourcehBitmap ){ CDC sourcedc; CDC destdc; sourcedc.CreateCompatibleDC(NULL); destdc.CreateCompatibleDC(NULL); //the   bitmap   information. BITMAP   bm = {0}; //ge
Cimage和Cbitmap之间的 互相转换
CImage转为CBitmap: CImage* img; CBitmap* bm; img->Load(lpszSourceName); HBITMAP hbmp =(HBITMAP)img->operator HBITMAP(); bm->DeleteObject(); bm->Attach(hbmp); /////////////////////////////////////
CBitmap类 总结
class CBitmap : public CGdiObject { DECLARE_DYNAMIC(CBitmap) public: static CBitmap* PASCAL FromHandle(HBITMAP hBitmap); // Constructors CBitmap(); BOOL LoadBitmap(LPCTSTR lpszResou
CBitmap类
类CBitmap封装了Windows图形设备接口(GDI)中的位图,并且提供了操纵位图的成员函数。使用CBitmap对象之前要先构造CBitmap对象,调用其中的一个初始化成员函数设置位图对象的句柄。此后就可以调用其它成员函数了。要了解有关使用像CBitmap这样的图形对象的详细信息,请参阅联机文档“Visual C++ 程序员指南”中的“图形对象”。#include   CBitmap类的
关于HBITMAP,CBITMAP,BITMAP的转换以及图像显示的一点归纳
OK,在上一篇文章中我提到了VC6和VS的差别,在VC6中我们只能依赖于CBITMAP HBITMAP以及BITMAP之间的转化关系,而在VS中,我们用CIMAGE类就可以全部搞定,那么究竟这三个类之间的转化关系是什么样的呢?图像显示的时候该怎么使用呢,别着急,听我慢慢道来。一、区分概念:首先:BITMAP是C++中定义的位图结构体HBITMAP是Windows中使用的位图句柄CBitmap是MF...
一个在VC下显示位图的源程序
用CBitmap类显示位图 在VC6.0下编译通过
关闭