创建一个位图,该位图可用作目标图面、用于读回 CPU,或用作 DrawBitmap 和 ID2D1BitmapBrush API 的源。 此外,颜色上下文信息可以传递给位图。
语法
HRESULT CreateBitmap(
D2D1_SIZE_U size,
[in, optional] const void *sourceData,
UINT32 pitch,
[in, ref] const D2D1_BITMAP_PROPERTIES1 *bitmapProperties,
[out] ID2D1Bitmap1 **bitmap
);
参数
size
类型: D2D1_SIZE_U
要创建的位图的像素大小。
[in, optional] sourceData
类型: const void*
将加载到位图中的初始数据。
pitch
类型: UINT32
源数据的间距(如果指定)。
[in, ref] bitmapProperties
类型: const D2D1_BITMAP_PROPERTIES1
要创建的位图的属性。
[out] bitmap
类型: ID2D1Bitmap1**
此方法返回时,包含指向新位图对象的指针的地址。
返回值
类型: HRESULT
该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。
| HRESULT | 说明 |
|---|---|
| S_OK | 未发生错误。 |
| E_OUTOFMEMORY | Direct2D 无法分配足够的内存来完成调用。 |
| E_INVALIDARG | 传递给方法的值无效。 |
| D3DERR_OUTOFVIDEOMEMORY | Direct3D 没有足够的显示内存来执行该操作。 |
备注
如果使用 D2D1_BITMAP_OPTIONS_TARGET 创建新位图,则可以将其用作 SetTarget 的目标。
要求
| 最低受支持的客户端 | 适用于 Windows 7 的 Windows 8 和平台更新 [桌面应用 |UWP 应用] |
| 最低受支持的服务器 | Windows Server 2012 和适用于 Windows Server 2008 R2 的平台更新 [桌面应用 |UWP 应用] |
| 目标平台 | Windows |
| 标头 | d2d1_1.h |
| DLL | D2d1.dll |