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

El método Graphics::D rawImage dibuja una imagen.

Sintaxis

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: Imagen*

Puntero a un objeto Image que especifica la imagen de origen.

[in] destPoints

Tipo: const Point*

Puntero a una matriz de objetos Point que especifican el área, en un paralegrama, en el que se va a dibujar la imagen.

[in] count

Tipo: INT

Entero que especifica el número de elementos de la matriz destPoints .

[in] srcx

Tipo: INT

Número real que especifica la coordenada x de la esquina superior izquierda de la parte de la imagen de origen que se va a dibujar.

[in] srcy

Tipo: INT

Número real que especifica la coordenada y de la esquina superior izquierda de la parte de la imagen de origen que se va a dibujar.

[in] srcwidth

Tipo: INT

Número real que especifica el ancho de la parte de la imagen de origen que se va a dibujar.

[in] srcheight

Tipo: INT

Número real que especifica el alto de la parte de la imagen de origen que se va a dibujar.

[in] srcUnit

Tipo: Unidad

Elemento de la enumeración Unit que especifica la unidad de medida de la imagen. El valor predeterminado es UnitPixel.

[in] imageAttributes

Tipo: ImageAttributes*

Puntero a un objeto ImageAttributes que especifica los atributos de color y tamaño de la imagen que se van a dibujar. El valor predeterminado es NULL.

[in] callback

Tipo: DrawImageAbort

Método de devolución de llamada usado para cancelar el dibujo en curso. El valor predeterminado es NULL.

[in] callbackData

Tipo: VOID*

Puntero a datos adicionales utilizados por el método especificado por el parámetro callback . El valor predeterminado es NULL.

Valor devuelto

Tipo: Estado

Si el método se ejecuta correctamente, devuelve Ok, que es un elemento de la enumeración Status .

Si se produce un error en el método, devuelve uno de los otros elementos de la enumeración Status .

Comentarios

El valor del parámetro count debe ser igual a 3 para especificar las tres esquinas del paralelismo. La cuarta esquina del paralelgrama se calcula utilizando los vectores de las coordenadas primera y segunda y la primera y tercera coordenadas. La parte de la imagen de origen que se va a dibujar se escala para ajustarse al paralelismo.

Ejemplos

En el ejemplo siguiente se dibuja la imagen de origen original y, a continuación, se dibuja una parte de la imagen en un paralelógrama 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);
}

En la ilustración siguiente se muestra la salida del código anterior.

Ilustración en la que se muestra un patrón de tablero de verificación multicolor y, a continuación, un subconjunto ampliado de dos tones de ese patrón, con un paralelismo

Requisitos

   
Cliente mínimo compatible Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado gdiplusgraphics.h (include Gdiplus.h)
Library Gdiplus.lib
Archivo DLL Gdiplus.dll

Consulte también

Dibujo, posicionamiento y clonación de imágenes

Elementos gráficos

Imagen

ImageAttributes

Cargar y mostrar mapas de bits

Point

SetRemapTable