ImageAttributes::GetAdjustedPalette-Methode (gdiplusimageattributes.h)

Die ImageAttributes::GetAdjustedPalette-Methode passt die Farben in einer Palette entsprechend den Anpassungseinstellungen einer angegebenen Kategorie an.

Syntax

Status GetAdjustedPalette(
  [in, out] ColorPalette    *colorPalette,
  [in]      ColorAdjustType colorAdjustType
);

Parameter

[in, out] colorPalette

Typ: ColorPalette*

Zeiger auf eine ColorPalette-Struktur , die bei der Eingabe die zu ändernde Palette enthält und bei der Ausgabe die angepasste Palette empfängt.

[in] colorAdjustType

Typ: ColorPalette

Element der ColorAdjustType-Enumeration , das die Kategorie angibt, deren Anpassungseinstellungen auf die Palette angewendet werden.

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

Ein ImageAttributes-Objekt verwaltet Farb- und Graustufeneinstellungen für fünf Anpassungskategorien: Standard, Bitmap, Pinsel, Stift und Text. Sie können beispielsweise eine Farbzuordnungstabelle für die Standardkategorie, eine andere Farbzuordnungstabelle für die Bitmapkategorie und weiterhin eine andere Farbzuordnungstabelle für die Stiftkategorie angeben.

Wenn Sie ImageAttributes::GetAdjustedPalette aufrufen, können Sie die Anpassungskategorie angeben, die zum Anpassen der Palettenfarben verwendet wird. Wenn Sie beispielsweise ColorAdjustTypeBitmap an die ImageAttributes::GetAdjustedPalette-Methode übergeben, werden die Anpassungseinstellungen der Bitmapkategorie verwendet, um die Palettenfarben anzupassen.

Beispiele

Im folgenden Beispiel wird eine ColorPalette-Struktur mit vier Farben initialisiert: aqua, schwarz, rot und grün. Der Code erstellt auch ein ImageAttributes-Objekt und legt seine Bitmap-Remap-Tabelle so fest, dass Grün in Blau konvertiert wird. Anschließend passt der Code die Palettenfarben an, indem er die Adresse der Palette an die ImageAttributes::GetAdjustedPalette-Methode des ImageAttributes-Objekts übergibt. Der Code zeigt die vier Palettenfarben zweimal an: einmal vor der Anpassung und einmal nach der Anpassung.


VOID Example_GetAdjustedPalette(HDC hdc)
{
   Graphics graphics(hdc);
   INT j;

   // Create a palette that has four entries.
   ColorPalette* palette = 
      (ColorPalette*)malloc(sizeof(ColorPalette) + 3 * sizeof(ARGB));
   palette->Flags = 0;
   palette->Count = 4;

   palette->Entries[0] = 0xFF00FFFF;   // aqua
   palette->Entries[1] = 0xFF000000;   // black
   palette->Entries[2] = 0xFFFF0000;   // red
   palette->Entries[3] = 0xFF00FF00;   // green
  
   // Display the four palette colors with no adjustment.
   SolidBrush brush(Color());
   for(j = 0; j < 4; ++j)
   {
      brush.SetColor(palette->Entries[j]);
      graphics.FillRectangle(&brush, 30*j, 0, 20, 20);
   }

   // Create a remap table that converts green to blue.
   ColorMap map;
      map.oldColor = Color(255, 0, 255, 0);  // green
      map.newColor = Color(255, 0, 0, 255);  // blue

   // Create an ImageAttributes object, and set its bitmap remap table.
   ImageAttributes imAtt;
   imAtt.SetRemapTable(1, &map, ColorAdjustTypeBitmap);

   // Adjust the palette.
   imAtt.GetAdjustedPalette(palette, ColorAdjustTypeBitmap);

   // Display the four palette colors after the adjustment.
   for(j = 0; j < 4; ++j)
   {
      brush.SetColor(palette->Entries[j]);
      graphics.FillRectangle(&brush, 30*j, 30, 20, 20);
   }
}
				

Die folgende Abbildung zeigt die Ausgabe des vorherigen Codes. Beachten Sie, dass das Grün in der ursprünglichen Palette in Blau geändert wurde.

Abbildung mit zwei Zeilen farbiger Rechtecke; die letzte ist grün in Zeile 1, blau in Zeile 2

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 gdiplusimageattributes.h (include Gdiplus.h)
Bibliothek Gdiplus.lib
DLL Gdiplus.dll

Weitere Informationen

Bitmap

Farbe

Coloradjusttype

Colormap

Colorpalette

Bild

ImageAttributes

Metafile

PaletteFlags

Neueinfärbung