Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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.

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 |