Contact emails
ju...@chromium.org , zaker...@chromium.org
Spec
Discussion thread: https://discourse.wicg.io/t/canvas-color-spaces-wide-gamut-and-high-bit-depth-rendering/1505
Proposal: https://github.com/junov/CanvasColorSpace/blob/master/CanvasColorSpaceProposal.md
Summary
Content displayed through a canvas element should be color managed in order to minimize differences in appearance across browsers and display devices. Also, canvases should be able to take advantage of the full color gamut and dynamic range of the display device.
Motivation
In devices with high dynamic range displays, using legacy canvas may result in gamut clamping and loss of color information. With the spread use of HDR displays, it is now inevitable to support color managed canvases in chromium. Improving color fidelity of the canvas is very important for artistic uses (e.g. photo and paint apps) and for e-commerce (product presentation).
Interoperability and Compatibility Risk
Regarding the interoperability concerns, the propsal was originally incubated in the WHATWG github issue tracker and incorporates feedback that was provided in the respective thread. The current venue for discussing this proposal is a W3C WICG Discourse thread. The proposal was then further discussed in the Khronos WebGL working group, with the participation of engineers from Apple, Google, Microsoft, Mozilla, Nvidia, and others. Currently, none of the big vendors have shipped the implementation, but there is a good agreement on the suggested proposal. Regarding the compatibility risk, we expect no major compatibility issues as long as the proposal moves forward to become part of the standard. However, different implementations may choose to take shortcuts that deviate from the spec in order to make performance gains by using color transforms that are implemented in ways that take advantage of various GPU and CPU tricks. In this case we might encounter slight color differences (hopefully unnoticeable) between color converted objects displayed in different browsers.
Ongoing technical constraints
None.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes.
OWP launch tracking bug
Link to entry on the feature dashboard
https://www.chromestatus.com/feature/5701580166791168
Requesting approval to ship?
No.