FROM : R. Scott Thompson
DATE : Thu Sep 30 22:30:16 2004
>> Here's the technote you want (2035):
>> http://developer.apple.com/technotes/tn/tn2035.html. It explains how
>> Quartz and color management work together, and gives some rough
>> definition of the basic concepts.
>
> Thanks for the reference. It had some interesting things that were new
> to me (especially sips !) but
> much of it was a rehash of docs I've already seen. Most of the
> discussion is couched in terms of
> keeping already extant PDF's and images constant. It doesn't really
> address content creation
> or Cocoa. In particular it doesn't answer the (by now perennial)
> questions:
>
> * What space is NSCalibratedRGBColorSpace ?
I believe, though I am perfectly happy being corrected, that
NSCalibratedRGBSpace is the color space represented by the profile set
as your "RGB Default" profile in the ColorSync Preferences.
> * What is actually being done when you do [myNSCalibratedRGBColor set]
> and then draw ?
If the above is true, then you are saying that "I am going to specify
colors in the color space of my default RGB color space. I would like
you to translate them to the destination color space appropriately when
this drawing is realized on a device".
> * If untagged data is considered to have Generic RGB Profile and
> NSCalibratedRGBColorSpace does
> turn out to be equivalent to the space defined by Generic RGB
> Profile, then what in hell is the difference
> between "Calibrated RGB" and "Device RGB" in Cocoa ?
Device RGB is just the raw RGB values of the destination device. The
colors are passed through to the device without being interpreted by
the CMM.
> * Where and when do the transformations happen - again, what happens
> between and RGB being
> supplied to Cocoa and the RGB being applied to the input of the
> display ?
The way I understand it, (again I'm open to corrections) is that Cocoa
passes the color to the current CGContext. The CGContext interprets
the color values as being in it's current color space. When Quartz
passes that color to the destination device, if it was not specified in
device RGB then the color may go through an additional output color
correction. If the current color space IS Device RGB then the color
will be passed through as raw color values to the output device.
> * An in a related matter - what is the Digital Color Meter app
> measuring ? I used to be an experimental
> physicist. If you don't really know what your device is measuring,
> it's a pretty worthless device.
I think it depends on what you have the popup control set to. If the
control is set to "RGB as..." then it's directly reading device pixels.
If, in contrast, you set it to one of the device independent spaces
then you get the color value before it is corrected through the monitor
profile.
--
Macintosh Software Engineering Consulting Services
Visit my resume at <http://homepage.mac.com/easco/RSTResume.html>
DATE : Thu Sep 30 22:30:16 2004
>> Here's the technote you want (2035):
>> http://developer.apple.com/technotes/tn/tn2035.html. It explains how
>> Quartz and color management work together, and gives some rough
>> definition of the basic concepts.
>
> Thanks for the reference. It had some interesting things that were new
> to me (especially sips !) but
> much of it was a rehash of docs I've already seen. Most of the
> discussion is couched in terms of
> keeping already extant PDF's and images constant. It doesn't really
> address content creation
> or Cocoa. In particular it doesn't answer the (by now perennial)
> questions:
>
> * What space is NSCalibratedRGBColorSpace ?
I believe, though I am perfectly happy being corrected, that
NSCalibratedRGBSpace is the color space represented by the profile set
as your "RGB Default" profile in the ColorSync Preferences.
> * What is actually being done when you do [myNSCalibratedRGBColor set]
> and then draw ?
If the above is true, then you are saying that "I am going to specify
colors in the color space of my default RGB color space. I would like
you to translate them to the destination color space appropriately when
this drawing is realized on a device".
> * If untagged data is considered to have Generic RGB Profile and
> NSCalibratedRGBColorSpace does
> turn out to be equivalent to the space defined by Generic RGB
> Profile, then what in hell is the difference
> between "Calibrated RGB" and "Device RGB" in Cocoa ?
Device RGB is just the raw RGB values of the destination device. The
colors are passed through to the device without being interpreted by
the CMM.
> * Where and when do the transformations happen - again, what happens
> between and RGB being
> supplied to Cocoa and the RGB being applied to the input of the
> display ?
The way I understand it, (again I'm open to corrections) is that Cocoa
passes the color to the current CGContext. The CGContext interprets
the color values as being in it's current color space. When Quartz
passes that color to the destination device, if it was not specified in
device RGB then the color may go through an additional output color
correction. If the current color space IS Device RGB then the color
will be passed through as raw color values to the output device.
> * An in a related matter - what is the Digital Color Meter app
> measuring ? I used to be an experimental
> physicist. If you don't really know what your device is measuring,
> it's a pretty worthless device.
I think it depends on what you have the popup control set to. If the
control is set to "RGB as..." then it's directly reading device pixels.
If, in contrast, you set it to one of the device independent spaces
then you get the color value before it is corrected through the monitor
profile.
--
Macintosh Software Engineering Consulting Services
Visit my resume at <http://homepage.mac.com/easco/RSTResume.html>
| Related mails | Author | Date |
|---|---|---|
| Robert Clair | Sep 29, 17:47 | |
| Eric Ocean | Sep 29, 18:54 | |
| Robert Clair | Sep 30, 22:09 | |
| R. Scott Thompson | Sep 30, 22:30 |






Cocoa mail archive

