CMGetPS2ColorSpaceArray

[This is preliminary documentation and subject to change.]

The CMGetPS2ColorSpaceArray function retrieves the PostScript Level 2 color space array from a profile.

BOOL WINAPI CMGetPS2ColorSpaceArray(
  HPROFILE hProfile, 
  DWORD dwIntent, 
  DWORD dwCSAType, 
  LPBYTE lpBuffer, 
  LPDWORD lpcbSize, 
  LPBOOL lpbBinary 
);
 

Parameters

hProfile
Specifies the profile to use.
dwIntent
Specifies the desired rendering intent for the color space array. Can be one of the following values:
INTENT_PERCEPTUAL
INTENT_SATURATION
INTENT_RELATIVE_COLORIMETRIC
INTENT_ABSOLUTE_COLORIMETRIC
 

For more information, see Rendering Intents.

dwCSAType
Specifies the type of color space array. Can take one of the following values:
Constant Meaning
CSA_A Get a CIEBasedA color space array from the monochrome profile.
CSA_GRAY Get a CIEBasedA color space array from the monochrome profile.
CSA_ABC Get a CIEBasedABC color space array from the RGB or L*a*b profile.
CSA_DEF Get a CIEBasedDEF color space array from the RGB or L*a*b profile.
CSA_RGB Get a CIEBasedDEF color space array followed by a CIEBasedABC color space array from the RGB profile. On execution, if the printer doesn't support CIEBasedDEF color spaces, the function uses the CIEBasedABC definition.
CSA_Lab Gets a CIEBasedABC color space array from the L*a*b profile.
CSA_DEFG Get a CIEBasedDEFG color space array from the CMYK profile.
CSA_CMYK Get a CIEBasedCMYK color space array from the CMYK profile.

lpBuffer
Pointer to a buffer in which the color space array is to be placed. If the pointer is NULL, the function returns the size required for this buffer in the memory location pointed to by lpcbSize.
lpcbSize
Pointer to a variable specifying the size of the buffer. On return, the variable contains has the number of bytes actually copied to the buffer.
lpbBinary
Pointer to a Boolean variable. If its value is TRUE, data returned could be binary, or if FALSE, the data should be ASCII85 encoded. On return, the value of in the memory location pointed to by lpbBinary indicates whether the data returned actually is binary or ASCII85.

Return Values

If this function succeeds, the return value is TRUE. It also returns TRUE if it is called with lpBuffer set to NULL and the size of the required buffer is copied into lpcbSize.

If this function fails, the return value is FALSE. When this occurs, the CMM should call SetLastError to set the last error to a valid error value defined in Winerror.h.

Remarks

This function is optional for all CMMs.

If a CMM does not support this function, Windows uses the default CMM to create the color space array.

If the color space array tag is not present in the profile, the CMM should create the color space array from the profile contents. The resulting color space array can be used as the operand for the PostScript Level 2 setcolorspace operator.

QuickInfo

  Windows NT: Requires version 5.0 or later.
  Windows: Requires Windows 98.
  Windows CE: Unsupported.
  Header: Declared in wingdi.h.
  Import Library: Use gdi32.lib.

See Also

Color Management Overview, ICM 2.0 Functions