Méthode ImageAttributes ::SetColorKey (gdiplusimageattributes.h)
La méthode ImageAttributes ::SetColorKey définit la clé de couleur (plage de transparence) pour une catégorie spécifiée.
Syntaxe
Status SetColorKey(
[in, ref] const Color & colorLow,
[in, ref] const Color & colorHigh,
[in, optional] ColorAdjustType type
);
Paramètres
[in, ref] colorLow
Type : couleur const
Référence à un objet Color qui spécifie la valeur de clé de couleur basse.
[in, ref] colorHigh
Type : couleur const
Référence à un objet Color qui spécifie la valeur de clé de couleur élevée.
[in, optional] type
Type : ColorAdjustType
Élément de l’énumération ColorAdjustType qui spécifie la catégorie pour laquelle la clé de couleur est définie. La valeur par défaut est ColorAdjustTypeDefault.
Valeur retournée
Type : État
Si la méthode réussit, elle retourne Ok, qui est un élément de l’énumération Status .
Si la méthode échoue, elle retourne l’un des autres éléments de l’énumération Status .
Remarques
Cette méthode définit les valeurs de touche de couleur haute et basse afin qu’une gamme de couleurs puisse être rendue transparente. Toute couleur qui a chacun de ses trois composants (rouge, vert, bleu) entre les composants correspondants des touches de couleur haute et basse est rendue transparente.
Un objet ImageAttributes conserve les paramètres de couleurs et de nuances de gris pour cinq catégories d’ajustement : par défaut, bitmap, pinceau, stylet et texte. Par exemple, vous pouvez spécifier une clé de couleur pour la catégorie par défaut, une autre clé de couleur pour la catégorie bitmap et une autre clé de couleur pour la catégorie de stylet.
Les paramètres de réglage des couleurs et des nuances de gris par défaut s’appliquent à toutes les catégories qui n’ont pas de paramètres d’ajustement propres. Par exemple, si vous ne spécifiez jamais de paramètres d’ajustement pour la catégorie de stylet, les paramètres par défaut s’appliquent à la catégorie de stylet.
Dès que vous spécifiez un paramètre de réglage des couleurs ou des nuances de gris pour une catégorie donnée, les paramètres d’ajustement par défaut ne s’appliquent plus à cette catégorie. Par exemple, supposons que vous spécifiez une collection de paramètres d’ajustement pour la catégorie par défaut. Si vous définissez la clé de couleur pour la catégorie de stylet en passant ColorAdjustTypePen à la méthode ImageAttributes ::SetColorKey , aucun des paramètres d’ajustement par défaut ne s’applique aux stylets.
Exemples
L’exemple suivant crée un objet Image à partir d’un fichier .bmp. Le code crée également un objet ImageAttributes . L’appel à ImageAttributes ::SetColorKey définit la clé de couleur bitmap de l’objet ImageAttributes afin que toute couleur qui remplit les trois conditions suivantes soit transparente :
- Le composant rouge se situe entre 100 et 250.
- Le composant vert se situe entre 95 et 245.
- Le composant bleu se situe entre 30 et 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);
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP, Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | gdiplusimageattributes.h (inclure Gdiplus.h) |
Bibliothèque | Gdiplus.lib |
DLL | Gdiplus.dll |
Voir aussi
ImageAttributes ::ClearColorKey
ImageAttributes ::ClearThreshold