Graphics::D rawImage(Image*,constPointF*,INT,REAL,REAL,Unit,constImageAttributes*,DrawImageAbort,VOID*) (gdiplusgraphics.h)
Il metodo Graphics::D rawImage disegna un'immagine.
Sintassi
Status DrawImage(
[in] Image *image,
[in] const PointF *destPoints,
[in] INT count,
[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
);
Parametri
[in] image
Tipo: Immagine*
Puntatore a un oggetto Image che specifica l'immagine di origine.
[in] destPoints
Tipo: const PointF*
Puntatore a una matrice di oggetti PointF che specificano l'area, in un parallelogramma, in cui disegnare l'immagine.
[in] count
Tipo: INT
Intero che specifica il numero di elementi nella matrice destPoints .
[in] srcx
Tipo: REAL
Numero reale che specifica la coordinata x dell'angolo superiore sinistro della parte dell'immagine di origine da disegnare.
[in] srcy
Tipo: REAL
Numero reale che specifica la coordinata y dell'angolo superiore sinistro della parte dell'immagine di origine da disegnare.
[in] srcwidth
Tipo: REAL
Numero reale che specifica la larghezza della parte dell'immagine di origine da disegnare.
[in] srcheight
Tipo: REAL
Numero reale che specifica l'altezza della parte dell'immagine di origine da disegnare.
[in] srcUnit
Tipo: Unità
Elemento dell'enumerazione Unit che specifica l'unità di misura per l'immagine. Il valore predefinito è UnitPixel.
[in] imageAttributes
Tipo: ImageAttributes*
Puntatore a un oggetto ImageAttributes che specifica gli attributi di colore e dimensione dell'immagine da disegnare. Il valore predefinito è NULL.
[in] callback
Tipo: DrawImageAbort
Metodo callback usato per annullare il disegno in corso. Il valore predefinito è NULL.
[in] callbackData
Tipo: VOID*
Puntatore a dati aggiuntivi usati dal metodo specificato dal parametro callback . Il valore predefinito è NULL.
Valore restituito
Tipo: Stato
Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .
Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .
Commenti
Il valore del parametro count deve essere uguale a 3 per specificare le coordinate dell'angolo superiore sinistro, dell'angolo superiore destro e dell'angolo inferiore sinistro del parallelogramma. La coordinata dell'angolo inferiore destro viene calcolata usando le tre coordinate specificate, la larghezza e l'altezza dell'immagine. La parte dell'immagine di origine da disegnare viene ridimensionata per adattarsi al parallelogramma.
Esempio
L'esempio seguente disegna l'immagine di origine originale e quindi disegna una parte dell'immagine in un parallelogramma specificato.
VOID Example_DrawImage4(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 an array of Point objects that specify the destination of the cropped image.
PointF destPoints[3] = {
PointF(230.0f, 30.0f),
PointF(350.0f, 50.0f),
PointF(275.0f, 120.0f)};
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);
}
La figura seguente mostra l'output del codice precedente.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP, Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | gdiplusgraphics.h (include Gdiplus.h) |
Libreria | Gdiplus.lib |
DLL | Gdiplus.dll |
Vedi anche
Disegno, posizionamento e clonazione delle immagini
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per