Поделиться через


Метод 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 , получающий количество байтов данных, фактически полученных буферным массивом. Значение по умолчанию — NULL.

Возвращаемое значение

Тип: Состояние

В случае успешного выполнения метода возвращается ОК, который является элементом перечисления 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
Header gdiplusheaders.h (включая Gdiplus.h)
Библиотека Gdiplus.lib
DLL Gdiplus.dll