Partager via


Palette par défaut

La palette par défaut est un tableau de valeurs de couleur identifiant les couleurs qui peuvent être utilisées avec un contexte d’appareil par défaut. le système associe la palette par défaut à un contexte chaque fois qu’une application crée un contexte pour un appareil qui prend en charge les palettes de couleurs. La palette par défaut garantit que les couleurs sont disponibles pour une utilisation par une application sans aucune action supplémentaire.

La palette par défaut comporte généralement 20 entrées (couleurs), mais le nombre exact d’entrées peut varier d’un appareil à l’autre. Ce nombre est égal à la valeur NUMCOLORS retournée par la fonction GetDeviceCaps. Une application peut récupérer les valeurs de couleur des couleurs dans la palette par défaut en énumérant des stylos solides, la même technique utilisée pour découvrir les couleurs disponibles sur les appareils non-palette. Les couleurs de la palette par défaut dépendent de l’appareil. Les appareils d’affichage, par exemple, utilisent souvent les 16 couleurs standard de l’affichage VGA et 4 autres couleurs définies par Windows. Les appareils d’impression peuvent utiliser d’autres couleurs par défaut.

Lorsque vous utilisez la palette par défaut, les applications utilisent des valeurs de couleur pour spécifier des couleurs de stylet et de texte. Si la couleur demandée n’est pas dans la palette, le système se rapproche de la couleur à l’aide de la couleur la plus proche dans la palette. Si une application demande une couleur de pinceau unie qui n’est pas dans la palette, le système simule la couleur en effectuant une trame avec des couleurs qui se trouvent dans la palette.

Pour éviter les approximations et les trames, les applications peuvent également spécifier des couleurs de stylet, de pinceau et de texte à l’aide d’index de palette de couleurs plutôt que de valeurs de couleur. Un index de palette de couleurs est une valeur entière qui identifie une entrée de palette spécifique. Les applications peuvent utiliser des index de palette de couleurs à la place de valeurs de couleur, mais doivent utiliser la macro PALETTEINDEX pour créer les index.

Les index de palette de couleurs ne sont utiles que pour les appareils qui prennent en charge les palettes de couleurs. Pour éviter cette dépendance d’appareil, les applications qui utilisent le même code pour dessiner sur les appareils de palette et de nonpalette doivent utiliser des valeurs de couleur relatives à la palette pour spécifier des couleurs de stylet, de pinceau et de texte. Ces valeurs sont identiques aux valeurs de couleur, sauf lors de la création de pinceaux solides. (Sur les appareils de palette, une couleur de pinceau unie spécifiée par une valeur de couleur relative à la palette est soumise à une approximation de couleur au lieu de la trame.) Les applications doivent utiliser la macro PALETTERVB pour créer des valeurs de couleur relatives à la palette.

Le système n’autorise pas une application à modifier les entrées dans la palette par défaut. Pour utiliser des couleurs autres que celles de la palette par défaut, une application doit créer sa propre palette logique et sélectionner la palette dans le contexte de l’appareil.