Condividi tramite


Metodo Region::GetData (gdiplusheaders.h)

Il metodo Region::GetData ottiene dati che descrivono questa area.

Sintassi

Status GetData(
  [out] BYTE *buffer,
  [in]  UINT bufferSize,
  [out] UINT *sizeFilled
);

Parametri

[out] buffer

Tipo: BYTE*

Puntatore a una matrice di valori BYTE che ricevono i dati dell'area.

[in] bufferSize

Tipo: UINT

Intero che specifica le dimensioni, in byte, della matrice di buffer . Le dimensioni della matrice di buffer possono essere maggiori o uguali al numero di byte necessari per archiviare i dati dell'area. Il numero esatto di byte necessari può essere determinato chiamando il metodo Region::GetDataSize .

[out] sizeFilled

Tipo: UINT*

Facoltativa. Puntatore a un INT che riceve il numero di byte di dati effettivamente ricevuti dalla matrice di buffer . Il valore predefinito è NULL.

Valore restituito

Tipo: Stato

Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .

Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .

Commenti

Il metodo Region::GetDataSize può essere usato prima del metodo Region::GetData per determinare il numero di byte necessari per archiviare i dati dell'area. È quindi possibile allocare un buffer che corrisponde alla dimensione corretta per archiviare i dati dell'area e impostare il parametro del buffer per puntare al buffer.

Esempio

L'esempio seguente crea un'area da un percorso e quindi ottiene i dati che descrivono l'area.

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;
}

Requisiti

   
Client minimo supportato Windows XP, Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione gdiplusheaders.h (include Gdiplus.h)
Libreria Gdiplus.lib
DLL Gdiplus.dll