Visit SlideShowPro.net  Community Forums
SlideShowPro Support Wiki
  
Flash component

Color shifting in images

One of the questions we receive with a fair amount of frequency concerns visual differences in images when viewed in SlideShowPro (embedded in an HTML document and viewed in a web browser) versus the original image when viewed in a local operating system or in a photo editing application like Photoshop.

Before we get into the details about rendering in Flash and SlideShowPro, let's back up and lay some groundwork by talking about color management in general.

Color management in web browsers

Of all the web browsers out there, Safari (for both OS X and Windows) is the only (current) web browser that supports color management by default. Firefox supports it, but has it turned off by default. Opera, Google Chrome, and Internet Explorer don't support it at all.

Why is this important? Well, it means that in a color-managed browser images are rendered using the ICC profile assigned to your display. This means that colors are converted / mapped to the monitor's profile space when rendered, so regardless of where an image is viewed (in the operating system or in a web browser) it should look nearly the same. But in a browser without color-management, images are rendered using the default monitor profile, not your ICC profile, so they may appear lighter, darker, washed out, etc.

The key to consistent color: sRGB

Because 95% of web users out there don't use color managed browsers, and are likely using some flavor of Microsoft Windows, the sRGB color space is the most consistent option you have. Windows uses sRGB by default, which means that any browser without color management (like Internet Explorer) renders everything in that default color space.

Unlike Windows however, Mac OS X doesn't use sRGB as its default profile. Its color space is a bit lighter, thanks to a default gamma setting of 1.8. For this reason it's highly recommended that Mac users switch their display profiles to a gamma setting of 2.2, which will emulate the sRGB color space and image rendering found (by default) in Windows. You can change this through System Preferences > Displays > Color > Calibrate.

This would also explain why the "Save for Web" option in Adobe Photoshop uses sRGB as the color profile for web optimized images. It simply creates an image that will render most accurately across all displays.

Flash and sRGB

Now we get to the Flash Player. A SWF file, when embedded in HTML and viewed in a web browser, operates on its own "island" of sorts. It renders colors using the default color profile of a monitor, just like a web browser without color management would. And even if a web browser supported color management (like Safari), it has no control over the color of the SWF it displays.

The future: color management in Flash

The header is somewhat misleading, for the "future" is actually already here. ActionScript 3 and Flash Player 10 offer a new colorCorrection property that can be used to instruct SWFs to render color using the ICC color profile of a display. Only trouble is, using it requires publishing SWFs that only support Flash Player 10, so anyone viewing your SWF in their web browser would need Flash Player 10 installed (which at the time of this writing was around 50% or less).

Turning on color management is easy. Simply add the following to a keyframe at the beginning of your FLA:

stage.colorCorrection = "on";

When enabled, and if the user's monitor is assigned a valid ICC color profile, the player will use that profile. This means you could feasibly achieve consistent image color in the Flash Player in any web browser, in any operating system, for the Flash Player is bypassing the browser's own color management functionality.

Summary

So while the Flash Player does support color correction independent of web browsers, support is (for the time being) limited. But at least Adobe has made some great improvements to the Flash Player in this area, which is very exciting news for photographers. For the time being however, we recommend always using sRGB as both your display profile and image profile when creating images for SlideShowPro for the most consistent color possible.


Page last modified by tdominey on March 17, 2009, at 04:10 PM
© 2011 SlideShowPro. All Rights Reserved.