Поделиться через


Структура LOGCOLORSPACEA (wingdi.h)

Структура LOGCOLORSPACE содержит сведения, определяющие логическое цветовое пространство.

Синтаксис

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;

Члены

lcsSignature

Подпись цветового пространства. В настоящее время этому элементу всегда следует задать значение LCS_SIGNATURE.

lcsVersion

Номер версии; должен быть 0x400.

lcsSize

Размер этой структуры в байтах.

lcsCSType

Тип цветового пространства. Элемент может иметь одно из следующих значений.

Значение Значение
LCS_CALIBRATED_RGB Значения цвета — это откалиброванные значения RGB. Перед передачей на устройство значения претворяются с помощью конечных точек, указанных элементом lcsEndpoints .
LCS_sRGB Значения цвета — это значения sRGB.
LCS_WINDOWS_COLOR_SPACE Значения цвета — это значения цветового пространства Windows по умолчанию.
 

Если LCS_CALIBRATED_RGB не указан, элемент lcsEndpoints игнорируется.

lcsIntent

Метод сопоставления гаммы. Этот элемент может иметь одно из следующих значений.

Значение Блокировка с намерением Имя ICC Значение
LCS_GM_ABS_
 
КОЛОРИМЕТРИЧЕСКИЕ
Соответствие Абсолютная колориметрика Сохраните белую точку. Совпадите цвета с ближайшим цветом в гамме назначения.
LCS_GM_
 
БИЗНЕС
GRAPHIC Насыщенность Поддерживать насыщенность. Используется для бизнес-диаграмм и других ситуаций, в которых требуются неоконченные цвета.
LCS_GM_
 
ГРАФИКА
Подтверждение Относительная колориметрика Поддерживать соответствие колориметрии. Используется для графических макетов и именованных цветов.
LCS_GM_
 
ОБРАЗЫ
Picture Восприятия Поддерживайте контрастность. Используется для фотографий и естественных изображений.

lcsEndpoints

Красные, зеленые, синие конечные точки.

lcsGammaRed

Масштаб красной координаты.

lcsGammaGreen

Масштаб зеленой координаты.

lcsGammaBlue

Масштаб синей координаты.

lcsFilename[MAX_PATH]

Строка, завершающаяся нулевым значением, которая называет файл цветового профиля. Обычно для этого элемента устанавливается нулевое значение, но его можно использовать, чтобы задать цветовое пространство точно так, как указано в цветовом профиле. Это полезно для устройств, которые вводит значения цвета для конкретного принтера, или при использовании устанавливаемого сопоставителя цветов изображений. Если указан цветовой профиль, все остальные элементы этой структуры должны иметь допустимые значения, даже если значения не являются полностью точными.

Комментарии

Как и палитры, но в отличие от перьев и кистей, при создании LogColorSpace необходимо передать указатель.

Если для элемента lcsCSType задано значение LCS_sRGB или LCS_WINDOWS_COLOR_SPACE, другие элементы этой структуры игнорируются, а WCS использует цветовое пространство sRGB. Элементы lcsEndpoints,lcsGammaRed, lcsGammaGreen и lcsGammaBlue используются для описания логического цветового пространства. Элемент lcsEndpoints — это CIEXYZTRIPLE , содержащий значения x, y и z конечной точки RGB цветового пространства.

Требуемый битовый формат DWORD для lcsGammaRed, lcsGammaGreen и lcsGammaBlue представляет собой целое число с фиксированной точкой 8,8, смещенное влево на 8 бит. Это означает, что за 8 целочисленными битами следует 8 битов дробей. С учетом битового смещения 32-разрядного DWORD требуется следующий формат:

000000000nnnnnnnnnnnnffffffffff000000000

Всякий раз, когда элемент lcsFilename содержит имя файла, а для элемента lcsCSType задано значение LCS_CALIBRATED_RGB, WCS игнорирует другие элементы этой структуры. Он использует цветовое пространство в файле в качестве цветового пространства, к которому относится данная структура LOGCOLORSPACE .

Связь между значениями три стимула X, Y, Z и х, y, z выглядит следующим образом:

x = X/(X+Y+Z)

y = Y/(X+Y+Z)

z = Z/(X+Y+Z)

Если для элемента lcsCSType задано значение LCS_sRGB или LCS_WINDOWS_COLOR_SPACE, другие элементы этой структуры игнорируются, а ICM использует цветовое пространство sRGB. Приложения по-прежнему должны инициализировать остальную часть структуры, так как CreateProfileFromLogColorSpace игнорирует член lcsCSType и использует элементы lcsEndpoints, lcsGammaRed, lcsGammaGreen, lcsGammaBlue для создания профиля, который не может быть инициализирован в случае LCS_sRGB или LCS_WINDOWS_COLOR_SPACE цветовых пространств.

Примечание

Заголовок wingdi.h определяет LOGCOLORSPACE в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть wingdi.h

См. также раздел

BITMAPV4HEADER

BITMAPV5HEADER

CMYK

RGB