Estrutura LOGCOLORSPACEA (wingdi.h)

A estrutura LOGCOLORSPACE contém informações que definem um espaço de cor lógico.

Sintaxe

typedef struct tagLOGCOLORSPACEA {
  DWORD         lcsSignature;
  DWORD         lcsVersion;
  DWORD         lcsSize;
  LCSCSTYPE     lcsCSType;
  LCSGAMUTMATCH lcsIntent;
  CIEXYZTRIPLE  lcsEndpoints;
  DWORD         lcsGammaRed;
  DWORD         lcsGammaGreen;
  DWORD         lcsGammaBlue;
  CHAR          lcsFilename[MAX_PATH];
} LOGCOLORSPACEA, *LPLOGCOLORSPACEA;

Membros

lcsSignature

Assinatura de espaço em cores. No momento, esse membro sempre deve ser definido como LCS_SIGNATURE.

lcsVersion

Número de versão; deve ser 0x400.

lcsSize

Tamanho dessa estrutura, em bytes.

lcsCSType

Tipo de espaço de cor. O membro pode ser um dos valores a seguir.

Valor Significado
LCS_CALIBRATED_RGB Os valores de cor são valores RGB calibrados. Os valores são convertidos usando os pontos de extremidade especificados pelo membro lcsEndpoints antes de serem passados para o dispositivo.
LCS_sRGB Os valores de cor são valores sRGB.
LCS_WINDOWS_COLOR_SPACE Os valores de cor são valores de cor padrão do Espaço de Cor do Windows.
 

Se LCS_CALIBRATED_RGB não for especificado, o membro lcsEndpoints será ignorado.

lcsIntent

O método de mapeamento de gama. Esse membro pode ser um dos valores a seguir.

Valor Intencional Nome do ICC Significado
LCS_GM_ABS_
 
COLORIMÉTRICO
Corresponder a Corimétrica Absoluta Mantenha o ponto branco. Combine as cores com a cor mais próxima na gama de destino.
LCS_GM_
 
NEGÓCIO
Graphic Saturação Manter a saturação. Usado para gráficos de negócios e outras situações em que cores não undithered são necessárias.
LCS_GM_
 
GRÁFICOS
Prova Colorimétrica relativa Mantenha a correspondência colorimétrica. Usado para designs gráficos e cores nomeadas.
LCS_GM_
 
IMAGENS
Picture Percepção Mantenha o contraste. Usado para fotografias e imagens naturais.

lcsEndpoints

Pontos de extremidade vermelhos, verdes e azuis.

lcsGammaRed

Escala da coordenada vermelha.

lcsGammaGreen

Escala da coordenada verde.

lcsGammaBlue

Escala da coordenada azul.

lcsFilename[MAX_PATH]

Uma cadeia de caracteres terminada em nulo que nomeia um arquivo de perfil de cor. Esse membro normalmente é definido como zero, mas pode ser usado para definir o espaço de cor como exatamente conforme especificado pelo perfil de cor. Isso é útil para dispositivos que inserem valores de cor para uma impressora específica ou ao usar um correspondente de cor de imagem instalável. Se um perfil de cor for especificado, todos os outros membros dessa estrutura deverão ser definidos como valores razoáveis, mesmo que os valores não sejam completamente precisos.

Comentários

Como paletas, mas ao contrário de canetas e pincéis, um ponteiro deve ser passado ao criar um LogColorSpace.

Se o membro lcsCSType estiver definido como LCS_sRGB ou LCS_WINDOWS_COLOR_SPACE, os outros membros dessa estrutura serão ignorados e o WCS usará o espaço de cor sRGB. Os membros lcsEndpoints,lcsGammaRed, lcsGammaGreen e lcsGammaBlue são usados para descrever o espaço lógico de cores. O membro lcsEndpoints é um CIEXYZTRIPLE que contém os valores x, y e z do ponto de extremidade RGB do espaço de cores.

O formato de bit DWORD necessário para lcsGammaRed, lcsGammaGreen e lcsGammaBlue é um inteiro de ponto fixo de 8,8 deslocado para a esquerda por 8 bits. Isso significa que 8 bits inteiros são seguidos por 8 bits de fração. Levando em conta a mudança de bit, o formato necessário do DWORD de 32 bits é:

00000000nnnnnnffffffff00000000

Sempre que o membro lcsFilename contiver um nome de arquivo e o membro lcsCSType for definido como LCS_CALIBRATED_RGB, o WCS ignorará os outros membros dessa estrutura. Ele usa o espaço de cor no arquivo como o espaço de cor ao qual essa estrutura LOGCOLORSPACE se refere.

A relação entre os valores de tri-estímulo X,Y, Z e chromaticity x,y,z é a seguinte:

x = X/(X+Y+Z)

y = Y/(X+Y+Z)

z = Z/(X+Y+Z)

Se o membro lcsCSType estiver definido como LCS_sRGB ou LCS_WINDOWS_COLOR_SPACE, os outros membros dessa estrutura serão ignorados e o ICM usará o espaço de cor sRGB. Os aplicativos ainda devem inicializar o restante da estrutura, pois CreateProfileFromLogColorSpace ignora o membro lcsCSType e usa membros lcsEndpoints, lcsGammaRed, lcsGammaGreen, lcsGammaBlue para criar um perfil, que pode não ser inicializado no caso de espaços de cor LCS_sRGB ou LCS_WINDOWS_COLOR_SPACE.

Observação

O cabeçalho wingdi.h define LOGCOLORSPACE como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho wingdi.h

Confira também

BITMAPV4HEADER

BITMAPV5HEADER

CMYK

RGB