CD2DBitmap 类
ID2D1Bitmap 的包装器。
语法
class CD2DBitmap : public CD2DResource;
成员
公共构造函数
名称 | 描述 |
---|---|
CD2DBitmap::CD2DBitmap | 已重载。 从 HBITMAP 构造 CD2DBitmap 对象。 |
CD2DBitmap::~CD2DBitmap | 析构函数。 在销毁 D2D 位图对象时调用。 |
受保护构造函数
名称 | 描述 |
---|---|
CD2DBitmap::CD2DBitmap | 已重载。 构造 CD2DBitmap 对象。 |
公共方法
名称 | 描述 |
---|---|
CD2DBitmap::Attach | 将现有资源接口附加到对象 |
CD2DBitmap::CopyFromBitmap | 将指定区域从指定的位图复制到当前位图 |
CD2DBitmap::CopyFromMemory | 将指定区域从内存复制到当前位图 |
CD2DBitmap::CopyFromRenderTarget | 将指定区域从指定的呈现目标复制到当前位图 |
CD2DBitmap::Create | 创建 CD2DBitmap。 (替代 CD2DResource::Create。) |
CD2DBitmap::Destroy | 销毁 CD2DBitmap 对象。 (重写 CD2DResource::Destroy) |
CD2DBitmap::Detach | 从对象中拆离资源接口 |
CD2DBitmap::Get | 返回 ID2D1Bitmap 接口 |
CD2DBitmap::GetDPI | 返回位图的每英寸点数 (DPI) |
CD2DBitmap::GetPixelFormat | 检索位图的像素格式和 alpha 模式 |
CD2DBitmap::GetPixelSize | 返回位图的大小,按设备依赖单位(像素)计 |
CD2DBitmap::GetSize | 返回位图的大小,以设备独立像素 (DIP) 为单位 |
CD2DBitmap::IsValid | 检查资源的有效性(重写 CD2DResource::IsValid)。 |
受保护方法
名称 | 描述 |
---|---|
CD2DBitmap::CommonInit | 初始化对象 |
公共运算符
“属性” | 描述 |
---|---|
CD2DBitmap::operator ID2D1Bitmap* | 返回 ID2D1Bitmap 接口 |
受保护的数据成员
名称 | 描述 |
---|---|
CD2DBitmap::m_bAutoDestroyHBMP | 如果应销毁 m_hBmpSrc,则为 TRUE;否则为 FALSE。 |
CD2DBitmap::m_hBmpSrc | 源位图句柄。 |
CD2DBitmap::m_lpszType | 资源类型。 |
CD2DBitmap::m_pBitmap | 存储指向 ID2D1Bitmap 对象的指针。 |
CD2DBitmap::m_sizeDest | 位图目标大小。 |
CD2DBitmap::m_strPath | 位图文件路径。 |
CD2DBitmap::m_uiResID | 位图资源 ID。 |
继承层次结构
CD2DBitmap
要求
标头:afxrendertarget.h
CD2DBitmap::~CD2DBitmap
析构函数。 在销毁 D2D 位图对象时调用。
virtual ~CD2DBitmap();
CD2DBitmap::Attach
将现有资源接口附加到对象。
void Attach(ID2D1Bitmap* pResource);
参数
pResource
现有资源接口。 不能为 NULL。
CD2DBitmap::CD2DBitmap
从资源构造 CD2DBitmap 对象。
CD2DBitmap(
CRenderTarget* pParentTarget,
UINT uiResID,
LPCTSTR lpszType = NULL,
CD2DSizeU sizeDest = CD2DSizeU(0, 0),
BOOL bAutoDestroy = TRUE);
CD2DBitmap(
CRenderTarget* pParentTarget,
LPCTSTR lpszPath,
CD2DSizeU sizeDest = CD2DSizeU(0, 0),
BOOL bAutoDestroy = TRUE);
CD2DBitmap(
CRenderTarget* pParentTarget,
HBITMAP hbmpSrc,
CD2DSizeU sizeDest = CD2DSizeU(0, 0),
BOOL bAutoDestroy = TRUE);
CD2DBitmap(
CRenderTarget* pParentTarget,
BOOL bAutoDestroy = TRUE);
参数
pParentTarget
指向渲染目标的指针。
uiResID
资源的资源 ID 号。
lpszType
指向包含资源类型的以 null 结尾的字符串的指针。
sizeDest
位图的目标大小。
bAutoDestroy
指示对象将由所有者 (pParentTarget) 销毁。
lpszPath
指向包含文件名的以 null 结尾的字符串的指针。
hbmpSrc
位图的句柄。
CD2DBitmap::CommonInit
初始化 对象。
void CommonInit();
CD2DBitmap::CopyFromBitmap
将指定区域从指定的位图复制到当前位图。
HRESULT CopyFromBitmap(
const CD2DBitmap* pBitmap,
const CD2DPointU* destPoint = NULL,
const CD2DRectU* srcRect = NULL);
参数
pBitmap
要从中复制的位图。
destPoint
在当前位图中,指将 srcRect 指定的区域复制到的区域的左上角。
srcRect
要复制的位图区域。
返回值
如果该方法成功,则它会返回 S_OK。 否则,它将返回 HRESULT 错误代码。
CD2DBitmap::CopyFromMemory
将指定区域从内存复制到当前位图。
HRESULT CopyFromMemory(
const void* srcData,
UINT32 pitch,
const CD2DRectU* destRect = NULL);
参数
srcData
要复制的数据。
pitch
存储在 srcData 中的源位图的跨度或间距。 跨度是扫描线的字节计数(内存中的一行像素)。 可按以下公式计算跨度:像素宽度 * 每像素字节数 + 内存填充。
destRect
在当前位图中,指将 srcRect 指定的区域复制到的区域的左上角。
返回值
如果该方法成功,则它会返回 S_OK。 否则,它将返回 HRESULT 错误代码。
CD2DBitmap::CopyFromRenderTarget
将指定区域从指定的呈现目标复制到当前位图。
HRESULT CopyFromRenderTarget(
const CRenderTarget* pRenderTarget,
const CD2DPointU* destPoint = NULL,
const CD2DRectU* srcRect = NULL);
参数
pRenderTarget
包含要复制的区域的呈现目标。
destPoint
在当前位图中,指将 srcRect 指定的区域复制到的区域的左上角。
srcRect
要复制的 renderTarget 区域。
返回值
如果该方法成功,则它会返回 S_OK。 否则,它将返回 HRESULT 错误代码。
CD2DBitmap::Create
创建 CD2DBitmap。
virtual HRESULT Create(CRenderTarget* pRenderTarget);
参数
pRenderTarget
指向渲染目标的指针。
返回值
如果该方法成功,则它会返回 S_OK。 否则,它将返回 HRESULT 错误代码。
CD2DBitmap::Destroy
销毁 CD2DBitmap 对象。
virtual void Destroy();
CD2DBitmap::Detach
从对象中拆离资源接口。
ID2D1Bitmap* Detach();
返回值
指向拆离的资源接口的指针。
CD2DBitmap::Get
返回 ID2D1Bitmap 接口。
ID2D1Bitmap* Get();
返回值
指向 ID2D1Bitmap 接口的指针;如果对象尚未初始化,则为 NULL。
CD2DBitmap::GetDPI
返回位图的每英寸点数 (DPI)。
CD2DSizeF GetDPI() const;
返回值
位图的水平和垂直 DPI。
CD2DBitmap::GetPixelFormat
检索位图的像素格式和 alpha 模式
D2D1_PIXEL_FORMAT GetPixelFormat() const;
返回值
位图的像素格式和 alpha 模式。
CD2DBitmap::GetPixelSize
返回位图的大小,按设备依赖单位(像素)计。
CD2DSizeU GetPixelSize() const;
返回值
位图的大小(以像素为单位)。
CD2DBitmap::GetSize
返回位图的大小,以设备独立像素 (DIP) 为单位。
CD2DSizeF GetSize() const;
返回值
位图的大小(以 DIP 为单位)。
CD2DBitmap::IsValid
检查资源的有效性。
virtual BOOL IsValid() const;
返回值
如果资源有效,则为 TRUE;否则为 FALSE。
CD2DBitmap::m_bAutoDestroyHBMP
如果应销毁 m_hBmpSrc,则为 TRUE;否则为 FALSE。
BOOL m_bAutoDestroyHBMP;
CD2DBitmap::m_hBmpSrc
源位图句柄。
HBITMAP m_hBmpSrc;
CD2DBitmap::m_lpszType
资源类型。
LPCTSTR m_lpszType;
CD2DBitmap::m_pBitmap
存储指向 ID2D1Bitmap 对象的指针。
ID2D1Bitmap* m_pBitmap;
CD2DBitmap::m_sizeDest
位图目标大小。
CD2DSizeU m_sizeDest;
CD2DBitmap::m_strPath
位图文件路径。
CString m_strPath;
CD2DBitmap::m_uiResID
位图资源 ID。
UINT m_uiResID;
CD2DBitmap::operator ID2D1Bitmap*
返回 ID2D1Bitmap 接口
operator ID2D1Bitmap*();
返回值
指向 ID2D1Bitmap 接口的指针;如果对象尚未初始化,则为 NULL。