Copy link to clipboard
Summary: LR includes third-party web-browser engines that are almost certainly used to render HTML Web galleries. The observed color-management behavior of LR's Web module matches that of these Web engines on Mac. The Web module could be made fully color-managed by updating LR to use the most recent version of the Chromium Embedded Framework.DetailsThe Finder shows LR 4.0 and 5.7.1 on Mac include WebKit 1.0.0, the web browser engine used by Safari, which has long been fully color managed (using profiles embedded in photos and the display profile). Accordingly, the Web module in these versions of LR is fully color-managed.The Finder shows LR 6.0, 6.14, and 8.0 on Mac include Chromium Embedded Framework (CEF), the web engine inside Chrome. All of these LR versions use an old version of CEF (31523.6.11), dating from at least 2015, when LR 6 was released. Older versions of Chrome were only partially color-managed, using profiles embedded in photos but assuming the display's profile was sRGB. Accordingly, the Web module in these versions of LR behaves similarly.Both web engines treat photos without an embedded profile ("untagged") specially. WebKit assumes the photo is sRGB and displays it using the display profile. CEF sends the color numbers directly to the display without using the display profile.The color behavior of CEF in LR's Web module was certainly reasonable for 2015, since it matched the behavior of the most popular browser at the time. But now most people viewing the Web on desktop computers use browsers that are fully color-managed. Newer versions of CEF support full color-management, so this issue could be addressed by including the most recent version of CEF in LR.Steps to ConfirmThe step-by-step above demonstrates the basic behavior of the Web module in the various LR versions. The following recipe provides detailed confirmation that the Web module's behavior matches the corresponding web engine.I created a color chart in Pro Photo and then converted it to Adobe RGB (1998) and sRGB, creating these files: adobergb.jpg, prophoto.jpg, srgb.jpg.I created an additional three versions of the chart by removing the embedded profiles: adobergb.untagged.jpg, prophoto.untagged.jpg, srgb.untagged.jpg.I created two more versions by assigning the sRGB profile to adobergb.jpg and prophoto.jpg using ExifTool: adobergb.srgb.jpg, prophoto.srgb.jpg.These are all available here, along with the screenshots included below: https://www.dropbox.com/s/vpf5onzinh124km/web-module.2018.10.26.zip?dl=0 I displayed each chart in LR 8.0's Web module and compared it side-by-side with one of the charts displayed using Faststone, a popular Windows app that isn't color-managed. (Faststone was running in a virtual machine, with its CMS disabled. This was the most convenient way for me to send color numbers directly to the display without using a photo's profile or the display profile. You could also use Photoshop if you set the Color Settings appropriately.)In the screenshots that follow, the Web module's HTML gallery is on the left and the Faststone window on the right. The name of the charts being displayed is at the bottom left and bottom right.For the charts adobergb.jpg, prophoto.rgb, and srgb.jpg, the Web module converts them to sRGB and sends the resulting color numbers to the display without using the display profile. Thus, the Web module matches srgb.untagged.jpg as viewed in Faststone:For the charts adobergb.untagged.jpg, prophoto.untagged.jpg, and srgb.untagged.jpg, these files are missing embedded profiles, so the Web module sends their color numbers unmodified to the display without using the display profile. Thus, the Web module matches the results of the file displayed in Faststone:You can open these screenshots in Photoshop and compare the RGB values of the corresponding patches -- they match to +/- 1 of the RGB value (e.g. 171 versus 172 in the red channel). (Screenshots record the pixel values as they are sent to the display, after any display profile has been applied.)I did a similar procedure with LR 5.7.1. As predicted, for the tagged files adobergb.jpg, prophoto.jpg, and srgb.jpg, the Web module matches the output of Safari (both use WebKit). For the untagged files, the Web module assumes they are in sRGB and then displays them using the display profile. For example, the Web module's output of prophoto.untagged.jpg matches Safari displaying prophoto.srgb.jpg (which is prophoto.jpg assigned the sRGB profile).