Region::GetData 方法 (gdiplusheaders.h)
Region::GetData 方法获取描述此区域的数据。
语法
Status GetData(
[out] BYTE *buffer,
[in] UINT bufferSize,
[out] UINT *sizeFilled
);
parameters
[out] buffer
类型: BYTE*
指向接收区域数据的 BYTE 值的数组的指针。
[in] bufferSize
类型: UINT
指定 缓冲区 数组的大小(以字节为单位)的整数。 缓冲区数组的大小可以大于或等于存储区域数据所需的字节数。 可以通过调用 Region::GetDataSize 方法来确定所需的确切字节数。
[out] sizeFilled
类型: UINT*
可选。 指向接收缓冲区数组实际接收的数据字节数的 INT 的指针。 默认值为 NULL。
返回值
类型: 状态
如果方法成功,则返回 Ok,这是 Status 枚举的元素。
如果 方法失败,它将返回 Status 枚举的其他元素之一。
注解
可以在 Region::GetData 方法 之前使用 Region::GetDataSize 方法来确定存储区域数据所需的字节数。 然后,可以分配正确大小的缓冲区来存储区域数据,并将 缓冲区 参数设置为指向该缓冲区。
示例
以下示例从路径创建一个区域,然后获取描述该区域的数据。
VOID Example_GetData(HDC)
{
Point points[] = {
Point(110, 20)
Point(120, 30),
Point(100, 60),
Point(120, 70),
Point(150, 60),
Point(140, 10)};
GraphicsPath path;
path.AddClosedCurve(points, 6);
// Create a region from a path.
Region pathRegion(&path);
// Get the region data.
UINT bufferSize = 0;
UINT sizeFilled = 0;
BYTE* pData = NULL;
bufferSize = pathRegion.GetDataSize();
pData = new BYTE[bufferSize];
pathRegion.GetData(pData, bufferSize, &sizeFilled);
// Inspect or use the region data.
...
delete pData;
}
要求
最低受支持的客户端 | Windows XP、Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | gdiplusheaders.h (包括 Gdiplus.h) |
Library | Gdiplus.lib |
DLL | Gdiplus.dll |