blink::GraphicsLayer does not coherently handle color.
- its CSS colors are sRGB
- some of its images are sRGB
- some of its images are output color space
In legacy mode, we will pre-convert all input colors (CSS colors and images) to the output color space. At rasterization time we will do no color correction, and we will interpret the resulting cc::Resource as being in the color space that all inputs were pre-converted to.
In color correct rasterization (aka true color mode), we can just tag all images with their color space, and the result will be color correct at raster time.
See details in:
https://docs.google.com/document/d/1BMyXXTmiAragmt5ukVBIIOLDthd7JcJBgGMt-PwuTHY/edit#
This bug is to cover:
- adding pre-conversion of inputs to blink::GraphicsLayer
- plumbing this "implied" color space through from blink::GraphicsLayer to the cc::Resource
Comment 1 by ccameron@chromium.org
, Nov 21 2016