Partilhar via


Paleta padrão

A de paleta padrão é uma matriz de valores de cores que identifica as cores que podem ser usadas com um contexto de dispositivo por padrão. O sistema associa a paleta padrão a um contexto sempre que um aplicativo cria um contexto para um dispositivo que suporta paletas de cores. A paleta padrão garante que as cores estejam disponíveis para uso por um aplicativo sem qualquer ação adicional.

A paleta padrão normalmente tem 20 entradas (cores), mas o número exato de entradas pode variar de dispositivo para dispositivo. Esse número é igual ao valor NUMCOLORS retornado pela funçãoGetDeviceCaps. Um aplicativo pode recuperar os valores de cores na paleta padrão enumerando canetas sólidas, a mesma técnica usada para descobrir as cores disponíveis em dispositivos sem paleta. As cores na paleta padrão dependem do dispositivo. Os dispositivos de exibição, por exemplo, geralmente usam as 16 cores padrão da tela VGA e 4 outras cores definidas pelo Windows. Os dispositivos de impressão podem usar outras cores padrão.

Ao usar a paleta padrão, os aplicativos usam valores de cor para especificar cores de caneta e texto. Se a cor solicitada não estiver na paleta, o sistema aproxima a cor usando a cor mais próxima na paleta. Se um aplicativo solicitar uma cor de pincel sólida que não esteja na paleta, o sistema simulará a cor pontilhando com as cores que estão na paleta.

Para evitar aproximações e pontilhamento, os aplicativos também podem especificar cores de caneta, pincel e texto usando índices de paleta de cores em vez de valores de cores. Um índice de paleta de cores é um valor inteiro que identifica uma entrada de paleta específica. Os aplicativos podem usar índices de paleta de cores no lugar de valores de cores, mas devem usar a macroPALETTEINDEX para criar os índices.

Os índices da paleta de cores só são úteis para dispositivos que suportam paletas de cores. Para evitar essa dependência de dispositivo, os aplicativos que usam o mesmo código para desenhar em dispositivos de paleta e não paleta devem usar valores de cor relativos à paleta para especificar cores de caneta, pincel e texto. Esses valores são idênticos aos valores de cor, exceto ao criar pincéis sólidos. (Em dispositivos de paleta, uma cor de pincel sólida especificada por um valor de cor relativo à paleta está sujeita a aproximação de cor em vez de pontilhamento.) Os aplicativos devem usar o macro PALETTERGB para criar valores de cor relativos à paleta.

O sistema não permite que um aplicativo altere as entradas na paleta padrão. Para usar cores diferentes daquelas na paleta padrão, um aplicativo deve criar sua própria paleta lógica e selecionar a paleta no contexto do dispositivo.