Chrome's image encoders do not embed color space information. So if you encode a P3 image to PNG, it will forget the fact that it is P3.
Furthermore, Chrome's image encoders unpremultiply and premultiply in the gamma encoded space. If a color managed canvas in a linear gamma space is used, this will break. They encoders need to premultiply linearly.
Along with crbug.com/663569, this can be done by replacing Chrome's image encoders with Skia ones.
Comment 1 by zakerinasab@chromium.org
, Apr 20 2017