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

Die Graphics::D rawImage-Methode zeichnet ein Bild.

Syntax

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

Parameter

[in] image

Typ: Bild*

Zeiger auf ein Image-Objekt , das das Quellimage angibt.

[in] destPoints

Typ: const Point*

Zeiger auf ein Array von Point-Objekten , die den Bereich in einem Parallelogramm angeben, in dem das Bild gezeichnet werden soll.

[in] count

Typ: INT

Ganzzahl, die die Anzahl der Elemente im DestPoints-Array angibt.

[in] srcx

Typ: INT

Reelle Zahl, die die x-Koordinate der oberen linken Ecke des zu zeichnenden Teils des Quellbilds angibt.

[in] srcy

Typ: INT

Reelle Zahl, die die y-Koordinate der oberen linken Ecke des zu zeichnenden Teils des Quellbilds angibt.

[in] srcwidth

Typ: INT

Reelle Zahl, die die Breite des zu zeichnenden Teils des Quellbilds angibt.

[in] srcheight

Typ: INT

Reelle Zahl, die die Höhe des zu zeichnenden Teils des Quellbilds angibt.

[in] srcUnit

Typ: Einheit

Element der Unit-Enumeration , die die Maßeinheit für das Bild angibt. Der Standardwert ist UnitPixel.

[in] imageAttributes

Typ: ImageAttributes*

Zeiger auf ein ImageAttributes-Objekt , das die Farb- und Größenattribute des zu zeichnenden Bilds angibt. Der Standardwert ist NULL.

[in] callback

Typ: DrawImageAbort

Rückrufmethode, die verwendet wird, um die laufende Zeichnung abzubrechen. Der Standardwert ist NULL.

[in] callbackData

Typ: VOID*

Zeiger auf zusätzliche Daten, die von der vom Rückrufparameter angegebenen Methode verwendet werden. Der Standardwert ist NULL.

Rückgabewert

Typ: Status

Wenn die Methode erfolgreich ist, gibt sie OK zurück, ein Element der Status-Enumeration .

Wenn die Methode fehlschlägt, gibt sie eines der anderen Elemente der Status-Enumeration zurück.

Hinweise

Der Wert des count-Parameters muss gleich 3 sein, um die drei Ecken des Parallelogramms anzugeben. Die vierte Ecke des Parallelogramms wird mit den Vektoren der ersten und zweiten Koordinate sowie der ersten und dritten Koordinate berechnet. Der zu zeichnende Teil des Quellbilds wird skaliert, um dem Parallelogramm zu entsprechen.

Beispiele

Das folgende Beispiel zeichnet das ursprüngliche Quellbild und zeichnet dann einen Teil des Bilds in einem angegebenen Parallelogramm.

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

Die folgende Abbildung zeigt die Ausgabe des vorherigen Codes.

Abbildung eines mehrfarbigen Schachbrettmusters, dann einer vergrößerten, zweifarbigen Teilmenge dieses Musters, die zu einem Parallelogramm geschert wurde

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP, Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile gdiplusgraphics.h (include Gdiplus.h)
Bibliothek Gdiplus.lib
DLL Gdiplus.dll

Weitere Informationen

Zeichnen, Positionieren und Klonen von Bildern

Grafiken

Bild

ImageAttributes

Laden und Anzeigen von Bitmaps

Point

Setremaptable