Согласование цветов ColorSync на основанном на Intel Macs
Q: Мне нужен к подкачке байта мой битовый массив прежде, чем выполнить согласование цветов с ColorSync APIs на основанном на Intel Macintosh?
A: Мне нужен к подкачке байта мой битовый массив прежде, чем выполнить согласование цветов с ColorSync APIs на основанном на Intel Macintosh?
Если Вы используете CWMatchColors тогда удостоверьтесь значения в массиве CMColors находятся в порядке порядка байтов узла.
Если Вы используете CWMatchBitmap, CMBitmapColorSpace поле источника и места назначения CMBitmap структуры могут быть отмечены с помощью cmLittleEndianPacking.
ColorSync APIs только принимает данные в каноническом порядке компонента (RGB является R, G, B, CMYK является C, M, Y, K, и т.д.).
Например, если у Вас будет «Зеленый» пиксель CMYK, рассмотренный как 0x00FF00FF на основанном на Intel Mac, то необходимо будет подкачать его прежде (и возможно после) вызов ColorSync. Указание cmLittleEndianPacking в CMBitmapColorSpace поле источника и места назначения CMBitmap структуры не помогут в этом случае, потому что пиксель представлен на 8 битов за компонент.
Если необходимо подкачать порядок компонента в пикселе, мы рекомендуем использовать CMFloatBitmap структура, которая очень гибка относительно упорядочивания компонента и даже допускает планарные битовые массивы. Посмотрите Техническое примечание 2 035 ColorSync на Mac OS X для получения дополнительной информации.
Профили ICC нуждаются не и не должны быть изменены для свопинга пиксельных данных. Спецификация ICC (см. Международный Цветной Консорциум) предусматривает данные с обратным порядком байтов в профилях и для данных компонента, чтобы быть в каноническом порядке.
История версии документа
| Дата | Примечания |
|---|---|
| 16.03.2006 | Новый документ, описывающий специальные замечания для порядка байтов при выполнении согласования цветов ColorSync на основанном на Intel Macs |