Region::GetData 方法 (gdiplusheaders.h)
Region::GetData方法會取得描述此區域的資料。
語法
Status GetData(
[out] BYTE *buffer,
[in] UINT bufferSize,
[out] UINT *sizeFilled
);
參數
[out] buffer
類型: BYTE*
接收區域資料的 BYTE 值陣列指標。
[in] bufferSize
類型: UINT
整數,指定 緩衝區 陣列的大小,以位元組為單位。 緩衝區陣列的大小可以大於或等於儲存區域資料所需的位元組數目。 您可以呼叫 Region::GetDataSize 方法來判斷所需的確切位元組數目。
[out] sizeFilled
類型: UINT*
選擇性。 INT 的指標,該 INT 會接收 緩衝區 陣列實際接收的資料位元組數目。 預設值是 NULL。
傳回值
類型: 狀態
如果方法成功,它會傳回 Ok,這是 Status 列舉的元素。
如果方法失敗,它會傳回 Status 列舉的其他其中一個專案。
備註
Region::GetDataSize方法可以在Region::GetData方法之前使用,以判斷儲存區域資料所需的位元組數目。 然後,您可以配置正確大小的緩衝區來儲存區域資料,並將 buffer 參數設定為指向緩衝區。
範例
下列範例會從路徑建立區域,然後取得描述區域的資料。
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) |
程式庫 | Gdiplus.lib |
Dll | Gdiplus.dll |