Método Graphics::D rawImage(Image*,constPoint*,INT,INT,INT,INT,INT,Unit,constImageAttributes*,DrawImageAbort,VOID*) (gdiplusgraphics.h)

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

Sintaxe

Status DrawImage(
  [in] Image                 *image,
  [in] const Point           *destPoints,
  [in] INT                   count,
  [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
);

Parâmetros

[in] image

Tipo: Imagem*

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

[in] destPoints

Tipo: const Point*

Ponteiro para uma matriz de objetos Point que especificam a área, em um paralelismo, na qual desenhar a imagem.

[in] count

Tipo: INT

Inteiro que especifica o número de elementos na matriz destPoints .

[in] srcx

Tipo: INT

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

[in] srcy

Tipo: INT

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

[in] srcwidth

Tipo: INT

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

[in] srcheight

Tipo: INT

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.

Valor retornado

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

O valor do parâmetro count deve ser igual a 3 para especificar os três cantos do parallelogram. O quarto canto do paralelismo é calculado usando os vetores da primeira e segunda coordenadas e a primeira e a terceira coordenadas. A parte da imagem de origem a ser desenhada é dimensionada para se ajustar ao parallelogram.

Exemplos

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

VOID Example_DrawImage2(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 an array of Point objects that specify the destination of the cropped image.
   Point destPoints[3] = {
   Point(230, 30),
   Point(350, 50),
   Point(275, 120)};

   Point* pdestPoints = destPoints;

   // 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 cropped image.
   graphics.DrawImage(
   &image,
   pdestPoints,
   3,
   srcX,
   srcY,
   srcWidth,
   srcHeight,
   UnitPixel,
   &remapAttributes,
   NULL,
   NULL);
}

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

Ilustração mostrando um padrão de quadro de verificação multicolorido e, em seguida, um subconjunto ampliado de dois tons desse padrão, escorria para um paralelograma

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