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
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.
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
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour