TL;DR

Some PNGs with embedded wide-gamut color profiles can look washed out in Chrome while appearing normal in desktop image viewers or Safari. The difference comes from Chrome honoring embedded ICC profiles; converting pixels to sRGB (rather than stripping the profile) makes the images match across viewers.

What happened

A user noticed a PNG painting that looked foggy when opened in a Chromium browser but appeared normal in Safari and standard desktop image apps. After trying common fixes — stripping metadata, toggling alpha, applying gamma corrections and even flattening pixels — the problem persisted. Attempts to remove a gAMA (gamma) chunk had no effect, and further inspection with pngcheck revealed an embedded iCCP chunk: an ICC color profile of roughly 5 KB. The file lacked a gAMA chunk; ImageMagick’s reported Gamma value proved to be an assumed value, not actual file metadata. The root cause was that the PNG’s pixels were encoded for a wide-gamut profile (likely Display-P3). Chrome applied the embedded ICC profile and rendered the image according to that color space, while many desktop viewers approximate or ignore ICC profiles. Converting the image pixels to sRGB and embedding an sRGB profile made the displayed output consistent across Chrome and other viewers.

Why it matters

  • Color appearance can differ between browsers and desktop apps when embedded ICC profiles are present.
  • Modern devices and tools increasingly use wide-gamut color spaces (e.g., Display-P3), creating interoperability issues.
  • Chrome’s strict color management exposes true encoded colors, while some viewers hide differences by ignoring profiles.
  • Fixing mismatched display requires converting pixel values to the target color space rather than simply removing profile metadata.

Key facts

  • The issue was observed in a Chromium browser (reported on Google Chrome 143.0.7499.170).
  • Initial debugging steps included stripping metadata, removing alpha, and applying gamma adjustments; none resolved the visual difference.
  • ImageMagick’s identify can report an assumed Gamma value (0.454545) that does not necessarily reflect file metadata.
  • A pngcheck inspection revealed an iCCP chunk containing an embedded ICC profile of about 5,134 compressed bytes.
  • No gAMA chunk was present in the problematic PNGs despite attempts to remove one with pngcrush.
  • Chrome honors embedded ICC profiles and performs color management when rendering PNGs.
  • Many desktop image viewers and Safari may ignore or approximate embedded ICC profiles, producing a different result.
  • Converting images to sRGB with a proper ICC profile (rather than stripping the embedded profile) aligns appearance across viewers. Example command used: magick mogrify -profile /System/Library/ColorSync/Profiles/sRGB Profile.icc *.png

What to watch next

  • Browser and image app updates that change how embedded ICC profiles are handled (not confirmed in the source).
  • Whether desktop viewers will adopt more accurate ICC handling rather than approximating or ignoring profiles (not confirmed in the source).
  • Tooling defaults in operating systems and screenshot utilities that continue to write images in Display-P3 or other wide-gamut spaces (this behavior was observed in the report).

Quick glossary

  • ICC profile: A file-based description of a color space that tells software how to interpret pixel color values for accurate color reproduction.
  • sRGB: A widely used standard color space for images on the web and many devices; commonly used as a target for color conversion.
  • Display-P3: A wider-gamut color space supported by many modern displays and devices; encodes a broader range of colors than sRGB.
  • gAMA chunk: A PNG metadata chunk that can specify gamma information for how pixel values should be interpreted; not all PNGs include it.
  • Color management: The process of maintaining consistent color appearance across different devices and software by using profiles and conversions.

Reader FAQ

Why does the PNG look foggy in Chrome but normal elsewhere?
Chrome applied the PNG's embedded ICC profile and rendered colors according to that profile, revealing a wider-gamut encoding that other viewers had been ignoring.

Should I remove the ICC profile to fix this?
No — the recommended approach is to convert pixel data to the target color space (for example, to sRGB) and embed the appropriate profile, not just strip the profile.

What command fixed the images in the report?
The author used ImageMagick to convert to sRGB: magick mogrify -profile /System/Library/ColorSync/Profiles/sRGB Profile.icc *.png

Is Chrome displaying the image incorrectly?
No. The report concludes Chrome is doing proper color management by honoring the embedded ICC profile.

Do desktop viewers generally ignore ICC profiles?
The report states many desktop viewers approximate or ignore embedded ICC profiles, but specifics vary by app and platform.

December 27, 2025 Opening this PNG in Chrome shows a different image than in Safari or any desktop app Check this beautiful painting, Pleading, an artwork by Sir Lawrence Alma-Tadema:…

Sources

Related posts

By

Leave a Reply

Your email address will not be published. Required fields are marked *