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

La méthode Graphics::D rawImage dessine une image.

Syntaxe

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

Paramètres

[in] image

Type : Image*

Pointeur vers un objet Image qui spécifie l’image source.

[in] destPoints

Type : point const *

Pointeur vers un tableau d’objets Point qui spécifient la zone, dans un paralléliogramme, dans laquelle dessiner l’image.

[in] count

Type : INT

Entier qui spécifie le nombre d’éléments dans le tableau destPoints .

[in] srcx

Type : INT

Nombre réel qui spécifie la coordonnée x du coin supérieur gauche de la partie de l’image source à dessiner.

[in] srcy

Type : INT

Nombre réel qui spécifie la coordonnée y du coin supérieur gauche de la partie de l’image source à dessiner.

[in] srcwidth

Type : INT

Nombre réel qui spécifie la largeur de la partie de l’image source à dessiner.

[in] srcheight

Type : INT

Nombre réel qui spécifie la hauteur de la partie de l’image source à dessiner.

[in] srcUnit

Type : Unité

Élément de l’énumération Unit qui spécifie l’unité de mesure de l’image. La valeur par défaut est UnitPixel.

[in] imageAttributes

Type : ImageAttributes*

Pointeur vers un objet ImageAttributes qui spécifie les attributs de couleur et de taille de l’image à dessiner. La valeur par défaut est NULL.

[in] callback

Type : DrawImageAbort

Méthode de rappel utilisée pour annuler le dessin en cours. La valeur par défaut est NULL.

[in] callbackData

Type : VOID*

Pointeur vers des données supplémentaires utilisées par la méthode spécifiée par le paramètre de rappel . La valeur par défaut est NULL.

Valeur retournée

Type : État

Si la méthode réussit, elle retourne Ok, qui est un élément de l’énumération Status .

Si la méthode échoue, elle retourne l’un des autres éléments de l’énumération Status .

Notes

La valeur du paramètre count doit être égale à 3 pour spécifier les trois coins du paralléliogramme. Le quatrième coin du paralléliogramme est calculé à l’aide des vecteurs des première et deuxième coordonnées et des premières et troisième coordonnées. La partie de l’image source à dessiner est mise à l’échelle pour s’adapter au paralléliogramme.

Exemples

L’exemple suivant dessine l’image source d’origine, puis dessine une partie de l’image dans un paralléliogramme spécifié.

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

L’illustration suivante montre la sortie du code précédent.

Illustration montrant un modèle de damier multicolore, puis un sous-ensemble agrandi de deux tonalités de ce modèle, cisaillement à un paralléliogramme

Configuration requise

   
Client minimal pris en charge Windows XP, Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête gdiplusgraphics.h (inclure Gdiplus.h)
Bibliothèque Gdiplus.lib
DLL Gdiplus.dll

Voir aussi

Dessin, positionnement et clonage d’images

Graphismes

Image

ImageAttributes

Chargement et affichage de bitmaps

Point

SetRemapTable