Intent to Implement: Canvas color management

98 views
Skip to first unread message

Mohammad Reza Zakerinasab

unread,
Jan 5, 2017, 2:07:58 PM1/5/17
to blin...@chromium.org

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

http://crbug.com/678629


Link to entry on the feature dashboard

https://www.chromestatus.com/feature/5701580166791168


Requesting approval to ship?

No.


Reply all
Reply to author
Forward
0 new messages