Share via


Graphics::D rawImage(Image*,constRect&,INT,INT,INT,INT,Unit,constImageAttributes*,DrawImageAbort,VOID*) (gdiplusgraphics.h)

Il metodo Graphics::D rawImage disegna un'immagine.

Sintassi

Status DrawImage(
  [in]      Image                 *image,
  [in, ref] const Rect &          destRect,
  [in]      INT                   srcx,
  [in]      INT                   srcy,
  [in]      INT                   srcwidth,
  [in]      INT                   srcheight,
  [in]      Unit                  srcUnit,
  [in]      const ImageAttributes *imageAttributes,
  [in]      DrawImageAbort        callback,
  [in]      VOID                  *callbackData
);

Parametri

[in] image

Tipo: Immagine*

Puntatore a un oggetto Image che specifica l'immagine di origine.

[in, ref] destRect

Tipo: const Rect

Riferimento a un rettangolo che delimita l'area di disegno per l'immagine.

[in] srcx

Tipo: INT

Intero che specifica la coordinata x dell'angolo superiore sinistro della parte dell'immagine di origine da disegnare.

[in] srcy

Tipo: INT

Intero che specifica la coordinata y dell'angolo superiore sinistro della parte dell'immagine di origine da disegnare.

[in] srcwidth

Tipo: INT

Intero che specifica la larghezza della parte dell'immagine di origine da disegnare.

[in] srcheight

Tipo: INT

Intero che specifica l'altezza della parte dell'immagine di origine da disegnare.

[in] srcUnit

Tipo: Unità

Elemento dell'enumerazione Unit che specifica l'unità di misura per l'immagine. Il valore predefinito è UnitPixel.

[in] imageAttributes

Tipo: ImageAttributes*

Puntatore a un oggetto ImageAttributes che specifica gli attributi di colore e dimensione dell'immagine da disegnare. Il valore predefinito è NULL.

[in] callback

Tipo: DrawImageAbort

Metodo di callback utilizzato per annullare il disegno in corso. Il valore predefinito è NULL.

[in] callbackData

Tipo: VOID*

Puntatore a dati aggiuntivi utilizzati dal metodo specificato dal parametro di callback . Il valore predefinito è NULL.

Valore restituito

Tipo: Stato

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

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

Commenti

La parte dell'immagine di origine da disegnare viene ridimensionata per adattarsi al rettangolo.

Esempio

L'esempio seguente disegna l'immagine di origine originale e quindi disegna una parte dell'immagine in un rettangolo specificato.

VOID Example_DrawImage5(HDC hdc)

{
   Graphics graphics(hdc);

   // Create an Image object.
   Image image(L"pattern.png");

   // Draw the original source image.
   graphics.DrawImage(&image, 10, 10);

   // Define the portion of the image to draw.
   int srcX = 70;
   int srcY = 20;
   int srcWidth = 100;
   int srcHeight = 100;

   // Create a Rect object that specifies the destination of the image.
   Rect destRect(200, 10, image.GetWidth(), image.GetHeight());

   // Create an ImageAttributes object that specifies a recoloring from red to blue.
   ImageAttributes remapAttributes;
   ColorMap redToBlue;
   redToBlue.oldColor = Color(255, 255, 0, 0);
   redToBlue.newColor = Color(255, 0, 0, 255);
   remapAttributes.SetRemapTable(1, &redToBlue);

   // Draw the resized image.
   graphics.DrawImage(
   &image,
   destRect,
   srcX,
   srcY,
   srcWidth,
   srcHeight,
   UnitPixel,
   &remapAttributes,
   NULL,
   NULL);
}

La figura seguente mostra l'output del codice precedente.

Illustrazione che mostra due elementi grafici: un modello a scacchiera multicolore, quindi un ingrandimento a due tono da quel modello

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 gdiplusgraphics.h (include Gdiplus.h)
Libreria Gdiplus.lib
DLL Gdiplus.dll

Vedi anche

Disegno, posizionamento e clonazione delle immagini

Grafica

Immagine

Imageattributes

Caricamento e visualizzazione di bitmap

Point

SetRemapTable

Unità