Método Graphics::D rawImage(Image*,constRectF&,REAL,REAL,REAL,REAL,Unit,constImageAttributes*,DrawImageAbort,VOID*) (gdiplusgraphics.h)

O método Graphics::D rawImage desenha uma imagem.

Sintaxe

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

Parâmetros

[in] image

Tipo: Imagem*

Ponteiro para um objeto Image que especifica a imagem de origem.

[in, ref] destRect

Tipo: const RectF

Referência a um retângulo que vincula a área de desenho para a imagem.

[in] srcx

Tipo: REAL

Número real que especifica a coordenada x do canto superior esquerdo da parte da imagem de origem a ser desenhada.

[in] srcy

Tipo: REAL

Número real que especifica a coordenada y do canto superior esquerdo da parte da imagem de origem a ser desenhada.

[in] srcwidth

Tipo: REAL

Número real que especifica a largura da parte da imagem de origem a ser desenhada.

[in] srcheight

Tipo: REAL

Número real que especifica a altura da parte da imagem de origem a ser desenhada.

[in] srcUnit

Tipo: Unidade

Elemento da enumeração Unit que especifica a unidade de medida para a imagem. O valor padrão é UnitPixel.

[in] imageAttributes

Tipo: ImageAttributes*

Ponteiro para um objeto ImageAttributes que especifica os atributos de cor e tamanho da imagem a ser desenhada. O valor padrão é NULL.

[in] callback

Tipo: DrawImageAbort

Método de retorno de chamada usado para cancelar o desenho em andamento. O valor padrão é NULL.

[in] callbackData

Tipo: VOID*

Ponteiro para dados adicionais usados pelo método especificado pelo parâmetro de retorno de chamada . O valor padrão é NULL.

Retornar valor

Tipo: Status

Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .

Se o método falhar, ele retornará um dos outros elementos da enumeração Status .

Comentários

A parte da imagem de origem a ser desenhada é dimensionada para caber no retângulo.

Exemplos

O exemplo a seguir desenha a imagem de origem original e desenha uma parte da imagem em um retângulo especificado.

VOID Example_DrawImage6(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.

   REAL srcX = 70.0f;

   REAL srcY = 20.0f;

   REAL srcWidth = 100.0f;

   REAL srcHeight = 100.0f;



   // Create a RectF object that specifies the destination of the image.

   RectF destRect(200.0f, 10.0f, <REAL>image.GetWidth(), <REAL>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);

}

A ilustração a seguir mostra a saída do código anterior.

Ilustração mostrando dois gráficos: um padrão de quadro de verificação multicolorido e, em seguida, um aumento de dois tons desse padrão

Requisitos

   
Cliente mínimo com suporte Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho gdiplusgraphics.h (inclua Gdiplus.h)
Biblioteca Gdiplus.lib
DLL Gdiplus.dll

Confira também

Desenhar, posicionar e clonar imagens

Elementos gráficos

Imagem

Imageattributes

Carregando e exibindo bitmaps

Ponto

Setremaptable

Unidade