ImageAttributes::SetColorKey-Methode (gdiplusimageattributes.h)
Die ImageAttributes::SetColorKey-Methode legt den Farbschlüssel (Transparenzbereich) für eine angegebene Kategorie fest.
Syntax
Status SetColorKey(
[in, ref] const Color & colorLow,
[in, ref] const Color & colorHigh,
[in, optional] ColorAdjustType type
);
Parameter
[in, ref] colorLow
Typ: const Color
Verweis auf ein Color-Objekt , das den niedrigen Farbschlüsselwert angibt.
[in, ref] colorHigh
Typ: const Color
Verweis auf ein Color-Objekt , das den hohen Farbschlüsselwert angibt.
[in, optional] type
Typ: ColorAdjustType
Element der ColorAdjustType-Enumeration , das die Kategorie angibt, für die der Farbschlüssel festgelegt ist. Der Standardwert ist ColorAdjustTypeDefault.
Rückgabewert
Typ: Status
Wenn die Methode erfolgreich ist, gibt sie OK zurück, ein Element der Status-Enumeration .
Wenn die Methode fehlschlägt, wird eines der anderen Elemente der Status-Enumeration zurückgegeben.
Hinweise
Mit dieser Methode werden die werte für hohe und niedrige Farbschlüssel festgelegt, sodass eine Reihe von Farben transparent gemacht werden kann. Jede Farbe, die über jede ihrer drei Komponenten (Rot, Grün, Blau) zwischen den entsprechenden Komponenten der Hohen und Niedrigen Farbtasten verfügt, wird transparent gemacht.
Ein ImageAttributes-Objekt verwaltet Farb- und Graustufeneinstellungen für fünf Anpassungskategorien: Standard, Bitmap, Pinsel, Stift und Text. Sie können beispielsweise einen Farbschlüssel für die Standardkategorie, einen anderen Farbschlüssel für die Bitmapkategorie und dennoch einen anderen Farbschlüssel für die Stiftkategorie angeben.
Die Standardeinstellungen für Farb- und Graustufenanpassung gelten für alle Kategorien, die keine eigenen Anpassungseinstellungen haben. Wenn Sie beispielsweise nie Anpassungseinstellungen für die Stiftkategorie angeben, gelten die Standardeinstellungen für die Stiftkategorie.
Sobald Sie eine Farb- oder Graustufenanpassungseinstellung für eine bestimmte Kategorie angeben, gelten die Standardeinstellungseinstellungen nicht mehr für diese Kategorie. Angenommen, Sie geben eine Sammlung von Anpassungseinstellungen für die Standardkategorie an. Wenn Sie den Farbschlüssel für die Stiftkategorie festlegen, indem Sie ColorAdjustTypePen an die ImageAttributes::SetColorKey-Methode übergeben, gilt keine der Standardanpassungseinstellungen für Stifte.
Beispiele
Im folgenden Beispiel wird ein Image-Objekt aus einer .bmp-Datei erstellt. Der Code erstellt auch ein ImageAttributes-Objekt . Der Aufruf von ImageAttributes::SetColorKey legt den Bitmapfarbschlüssel des ImageAttributes-Objekts so fest, dass jede Farbe, die alle drei der folgenden Bedingungen erfüllt, transparent gemacht wird:
- Die rote Komponente liegt im Bereich von 100 bis 250.
- Die grüne Komponente liegt im Bereich von 95 bis 245.
- Die blaue Komponente liegt im Bereich von 30 bis 60.
VOID Example_SetColorKey(HDC hdc)
{
Graphics graphics(hdc);
// Create an Image object based on a BMP file.
// The image has three horizontal stripes.
// The color of the top stripe has RGB components (90, 90, 20).
// The color of the middle stripe has RGB components (150, 150, 150).
// The color of the bottom stripe has RGB components (130, 130, 40).
Image image(L"ColorKeyTest.bmp");
// Create an ImageAttributes object, and set its color key.
ImageAttributes imAtt;
imAtt.SetColorKey(
Color(100, 95, 30),
Color(250, 245, 60),
ColorAdjustTypeBitmap);
// Draw the image. Apply the color key.
// The bottom stripe of the image will be transparent because
// 100 <= 130 <= 250 and
// 95 <= 130 <= 245 and
// 30 <= 40 <= 60.
graphics.DrawImage(
&image,
Rect(20, 20, image.GetWidth(), image.GetHeight()), // dest rect
0, 0, image.GetWidth(), image.GetHeight(), // source rect
UnitPixel,
&imAtt);
}
Anforderungen
Anforderung | Wert |
---|---|
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
ImageAttributes::ClearColorKey