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


Функция WcsCreateIccProfile (icm.h)

Преобразует профиль WCS в профиль Международного консорциума цветов (ICC).

Синтаксис

HPROFILE WcsCreateIccProfile(
  HPROFILE hWcsProfile,
  DWORD    dwOptions
);

Параметры

hWcsProfile

Дескриптор преобразованного цветового профиля WCS. См. заметки.

dwOptions

Значение флага, указывающее параметры преобразования профиля.

По умолчанию исходные профили WCS, используемые для преобразования, внедряются в выходной профиль ICC в закрытом теге Майкрософт WcsProfilesTag (с подписью MS000). Это создает профиль ICC, совместимый с программным обеспечением ICC, но сохраняет исходные данные профиля WCS, доступные для кода, предназначенного для анализа.

Ниже приведены возможные значения этого параметра. Все биты, не определенные в этом списке, зарезервированы и должны иметь нулевое значение:

Значение Описание
WCS_DEFAULT Указывает, что новый профиль ICC содержит исходный профиль WCS в частном wcsProfilesTag.
WCS_ICCONLY Указывает, что новый профиль ICC не содержит ни wcsProfilesTag, ни исходный профиль WCS.

Возвращаемое значение

Если эта функция выполняется успешно, возвращаемое значение является дескриптором нового цветового профиля.

Если эта функция завершается сбоем, возвращается значение NULL. Чтобы получить дополнительные сведения об ошибке, вызовите Метод GetLastError.

Комментарии

Эту функцию можно использовать со строками ASCII или Юникода.

Функция CloseColorProfile должна использоваться для закрытия возвращенного дескриптора HPROFILE, если он больше не нужен.

DMP, CAMP и GMMP из HPROFILE встроены в закрытый тег в созданном профиле ICC.

Профиль ICC, созданный с помощью этого API, будет иметь тег описания профиля, созданный из элементов ProfileName профилей WCS в соответствии со следующим шаблоном: "Создано Microsoft WCS из DMP:[имя_профиля DMP], CAMP:[имя_профиля_CAMP], GMMP:[имя_профиля GMMP]".

Когда WCS обнаруживает этот профиль ICC (через OpenColorProfileW или WcsOpenColorProfileW ), он извлекает и использует профили WCS, содержащиеся в wcsProfilesTag.

Информация вне гаммы в тегах гаммы, созданных в WCS, использует расстояние между цветами в CIECAM02, что является средним квадратным корнем в пространстве CIECAM02 Jab. Расстояние в устаревших тегах гаммы профилей ICC — это средний квадратный корень в пространстве CIELAB. Рекомендуется использовать пространство CIECAM02, когда оно доступно, чтобы предоставить более точные метрики расстояния.

WCS извлекает и использует исходный профиль WCS с помощью XML-профиля, явно связанного с устройством, или профиля ICC сwcsProfilesTag.

WcsProfilesTag — это частный тег профиля МАЙКРОСОФТ, используемый в профилях, созданных WcsCreateIccProfile для хранения входных данных профилей WCS в WcsCreateIccProfile. Этот тег соответствует требованиям профиля ICC для тегов профилей. Компоненты тега, не относящиеся к XML, должны находиться в байтовом порядке "Big-Endian", что является стандартным для профилей ICC. Кроме того, данные тега должны быть выровнены по 4-байтовой границе (измеренной с начала профиля ICC). Структура тега определяется wcsProfilesTagType ниже. Обратите внимание, что xml-компоненты тега , профили WCS, содержащиеся в wcsProfileTag, остаются в собственном порядке байтов, который может быть либо с малым эндианом, либо с большим байтом, так как средства синтаксического анализа XML правильно обрабатывают либо.

Подпись WcsProfilesTag — MS00. Это подпись тега, которая будет отображаться в таблице тегов профилей ICC для WcsProfilesTag.

Структура WcsProfilesTagType имеет следующую структуру:

Смещение в байтах Содержимое
0-3 Сигнатура типа MS10.
4-7 Зарезервировано, должно быть установлено значение 0 (традиция ICC).
8-11 Смещение байтов от начала тега до данных CDMP.
12-15 Размер данных CDMP в байтах.
16-19 Смещение байтов от начала тега к данным CAMP.
20—23 Размер данных CAMP в байтах.
24-27 Смещение байтов от начала тега до данных GMMP.
28—31 Смещение байтов от начала тега до данных GMMP.
31-n Последовательность (размер элемента -32) байтов [где размер элемента — это размер тега, записанный в записи таблицы тегов профиля ICC для этого тега.]

Это XML-профили WCS, которые использовались WcsCreateIccProfile для создания этого профиля ICC. Профили WCS упорядочены: сначала DMP (обязательный), затем CAMP (при наличии), затем GMMP (при наличии).

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть icm.h
Библиотека Mscms.lib
DLL Mscms.dll

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