от: vga50
imho, и для принтера и для монитора данные готовятся как 8битные RGB именно из за ограничений архитектуры.
И мне так кажется.
от: vga50
А значит, поскольку эти RGB описывают широкое пр-во,
А вот так мне не кажется: никто не сует в монитор тройки чисел, описывающих цвет в sRGB/AdobeRGB/ProPhotoRGB и т. д. Иначе бы монитору пришлось бы самому думать о том, что (128, 0, 0) в одном случае означает один цвет (и субпиксели надо зажигать с одной интенсивностью), а в другом - другой (и интенсивности должны быть другие). Для таких размышлений монитор слишком туп.
от: vga50
Можно замеппить все 255 wRGB на 255 значений монитора - ну и что получим? Assign sRGB? :)
В таком случае мы получим Assign (профиль монитора).
Но замапить можно и иначе.
Пусть монитор способен отобразить 256*256*256=16 млн. цветов. Этот набор цветов не совпадает (какие бы кнопки на мониторе мы не нажимали) с набором из 16 млн цветов восьмибитного sRGB (или любого другого пространства). Это просто какие-то 16 млн цветов. Посылая в монитор sRGB'шные данные (как это и происходит при просмотре картинок в IE при полностью отсутсвующей CMS) мы получаем на экране совершенно произвольное по цвету изображение - поскольку у каждого монитора свои представления о том, что такое (255, 128, 0). Кончено, красный с синим никто местами не меняет, но "красный" на двух разных трубах может быть абсолютно разный.
Теперь мы берем калибратор, и с помощью него измеряем (допустим, в XYZ), какие цвета каким тройкам чисел у данного монитора соответствуют. Результаты измерений записываются в профиль монитора. Затем, когда мы просим компьютер нарисовать на экране плашку sRGB(255, 128, 0), он пересчитывает эту тройку чисел в XYZ (правила этого пересчета есть в профиле sRGB) и ищет такой же XYZ в профиле монитора. Точно такого же там может и не быть, но есть максимально похожий, и ему соответствует тройка чисел, к примеру (240, 140, 17). Вот эту тройку видеокарта и передает монитору, и он отображает цвет именно с таким XYZ, как надо.
