<?xml version="1.0" encoding="UTF-8"?>
<post>
  <area-id type="integer">581</area-id>
  <body>FYI, i thought this may have been of interest...  part of the new book im working on, hope it doesn't stir up TOO much trouble...  :)


Windows, in Windows95, started using Image Color Management, or ICM and at that point it was ICM 1.0.  ICM supported ICC (The International Color Consortium) standards that define ICC profiles, although Windows profiles are called ICM profiles and are not interchangeable with ColorSync, in Apple.  

They do, however, talk to a standard Color Management Module (CMM), and interestingly, that original mother of all CMMs was written by Heidelberg.  Much of what runs currently as CMMs has now been written by Kodak.  The Color Management Module is the &#8220;engine&#8221; that the system uses to convert ICC profiles to one another, to completely oversimplify some truly magical math.  

Windows98 and 2000 saw the release of ICM 2.0.  This is from the Microsoft website:

ICM 2.0 Features

After listening to customers and application vendors, Microsoft enhanced the capability of ICM to provide increased functionality and performance and to bring it to the Windows operating systems. Microsoft also wanted support for more color spaces (beyond RGB to CMYK, to device-independent color spaces such as CIELAB, a theoretical color space defined by the Commission Internationale de L'Eclairage, or CIE), as well as support for additional colors for processes such as HiFi Color.

Working with multiple industry leaders in the color field, Microsoft has designed ICM 2.0. The new APIs are a complete superset of the ICM 1.0 APIs and add a new range of capabilities:

ICM 1.0 compatible
ICC compliant
Scalable: Simple APIs for applications such as Microsoft Office, complete control for applications such as Adobe PhotoShop
Identical APIs for Windows 98 and Windows 2000 operating systems
Support for profile management at API and UI level
Bitmap v5 header support
Standard color space support: standard RGB (sRGB)
Broader color space support: RGB, CMYK, LAB, and others
Broader support for bitmap formats
Improved palette handling
Device driver participation on the Windows 98 and Windows 2000 operating systems
Support for multiple Color Management Modules (CMM)
Faster default CMM that supports all ICC-compliant profiles
Easier installation of profiles


Suffice to say, Windows98 was brought up to industry (read: &#8220;ColorSync&#8221;) standards.  

The next major step, announced in 2005 was called WCS, or &#8220;Windows Color System&#8221;, announced in 2005, but not released until 2007.  Just about the best work I&#8217;ve read on this is at Chromix&#8217;s president, Steve Upton on his &#8220;ColorWiki&#8221; blog:  
http://www.colorwiki.com/wiki/Vista's_New_Color_Management_System_-_WCS


I am gradually coming to the belief that Steve, and Chromix, are the gods of telling the color management story in an intelligible way, by the way.  His main ColorWiki site is at http://www.colorwiki.com/wiki/ColorWiki_Home


The final word, it seems to me, is what I&#8217;ve said before.  This looks good, WCS has some very promising solutions, but Windows is trying to cover all the bases and play catch-up at the same time.  The WCS solution is not backwards-compatible to previous Windows versions, and not cross-platform compatible, which, if that were possible would really be a big step.  (The Adobe CMM, for the record, is.)  

As I write this, in the cold January new England winter of 2008, Vista is, well, flakey at best, to the point that Windows&#8217; biggest customers have forced Microsoft to maintain support for WindowsXP, and keep it as a current option for developer installs.  

I really don&#8217;t feel the need to reinvent the wheel in Color Management, just to adopt the standard that has already been set, and, unfortunately for Windows owners, that standard is still Apple&#8217;s ColorSync in OSX.  
</body>
  <cal-dtstart type="datetime" nil="true"></cal-dtstart>
  <comments-count type="integer">1</comments-count>
  <created-at type="datetime">2008-01-22T11:25:26Z</created-at>
  <edited type="integer">0</edited>
  <edited-at type="datetime">2008-03-12T12:57:01Z</edited-at>
  <flagged type="boolean">false</flagged>
  <id type="integer">19841</id>
  <in-violation type="boolean">false</in-violation>
  <last-comment-author-id type="integer">21311</last-comment-author-id>
  <lastreply-at type="datetime">2008-01-22T12:34:40Z</lastreply-at>
  <location>boston, ma</location>
  <location-private type="boolean">true</location-private>
  <lock-at type="datetime" nil="true"></lock-at>
  <locked type="boolean">false</locked>
  <permalink>a-short-history-of-color-management-in-windows</permalink>
  <public type="integer">1</public>
  <title>A Short History of Color Management in Windows</title>
  <updated-at type="datetime">2008-03-12T12:57:01Z</updated-at>
  <user-id type="integer">21705</user-id>
</post>
