Достижение согласованности цветов на разных мониторах - PullRequest
5 голосов
/ 13 февраля 2010

У меня есть SWF-файл, содержащий только векторные иллюстрации (без растровых изображений). Есть ли способ улучшить согласованность цветов на разных мониторах?

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

Ответы [ 2 ]

6 голосов
/ 13 февраля 2010

Профили ICC предоставляют способ сопоставить цвета, которые ваш монитор считает отображаемыми (растровое изображение / изображение или другая графика), с тем, что он фактически выводит на панель. Используя программное обеспечение, которое поддерживает эти профили, вы можете получить более согласованные цвета.

Основной поток такой:

  1. Программа читает графический файл
  2. Программа использует профиль icc для компенсации недостатков ваших мониторов
  3. Когда вы меняете монитор, вы меняете профиль icc, чтобы он соответствовал новому монитору
  4. При печати вы используете другой профиль icc, подходящий для принтера, чтобы компенсировать недостатки принтера

Это делается для того, чтобы убедиться, что цвета на экране соответствуют печатной бумаге, и, как правило, это не то, что выходит за рамки хитрости.

Если вам нужна согласованность между вашими собственными мониторами, вам просто нужно их откалибровать и настроить профили для ваших мониторов. Я не знаю, как это сделать, но я думаю, что у Adobe есть довольно хорошие документы по этому поводу.

Если вы хотите что-то вроде одинаковых цветов, скажем, во флэш-игре разных пользователей, я не думаю, что это возможно. В любом случае это будет работа клиентов по управлению ICC-профилем и работа flashplayers для поддержки компенсации.

В любом случае часть настройки параметров монитора перед выполнением калибровки заключается в том, что это изменяет цветопередачу дисплея, поэтому при изменении настроек вам придется заново калибровать дисплей.

4 голосов
/ 13 февраля 2010

Проблема в том, что у вас нет контроля над монитором вашего пользователя (тип, марка, возраст, настройка).

Профили ICC предназначены для интерпретации между реальным устройством (например, камерой, монитором или принтером) и независимым рабочим цветовым пространством (см. здесь для объяснения).

Flash 10 «поддерживает ICC-профили» только в том смысле, что вы можете указать, должна ли Flash корректировать свои цвета в соответствии с локальным профилем ICC (выбранным пользователем в соответствии с их монитором). Поэтому самое большее, что вы можете сделать, это установить stage.colorCorrection = ColorCorrection.ON; (и это не будет работать для Unix или Linux).

В противном случае вы могли бы подумать о том, чтобы сделать цвета, показанные в вашем SWF-файле, настраиваемыми пользователем: они могут затем настроить вещи по своему вкусу - возможно, с помощью некоторой формы калибровка цвета .

...