Поддержка Headless Chromium для цветов с широкой гаммой в CSS

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

Нам удалось запустить безголовый хромовый экземпляр с принудительным цветовым профилем. display-p3-d65, но, похоже, нет способа фактически объявить цвет в css за пределами стандартной гаммы sRGB (например, color() поддерживается WebKit (и Safari), но не Chromium и Chrome).

Есть ли способ на самом деле объявить цвета в CSS с широкой гаммой и отобразить их в хроме?

1 ответ

Спецификация для цветов CSS, профиль ICC и прочее пока еще не на стадии разработки. Поддержка P3-D65 (Apple использует это с параметрической («пара») кривой sRGB, это то же самое, что 1DLUT профилей sRGB v2 ICC) в Chrome ограничена.

Просто назначьте это файлу на лету к изображению, https://cielab.xyz/thumbnails/Display%20P3.icc. Простой. НО! ПОЖАЛУЙСТА, обратите внимание, что отрицательное значение XYZ (отрицательное значение Z для красного основного) присутствует в таком профиле, потому что значения XYZ в профилях ICC до v5 всегда хроматически адаптируются к D50 вместо D65, используемого в Display P3, который не поддерживается Chrome или Firefox, кроме того, на платформах MacOS.

Также для PNG я рекомендую писать чанки gAMA и cHRM (iCCP с чанком профиля ICC перекрывает их, но все же).

Другие вопросы по тегам