ID2D1DeviceContext::CreateColorContext method (d2d1_1.h)

Creates a color context.

Syntax

HRESULT CreateColorContext(
                 D2D1_COLOR_SPACE  space,
  [in, optional] const BYTE        *profile,
                 UINT32            profileSize,
  [out]          ID2D1ColorContext **colorContext
);

Parameters

space

Type: D2D1_COLOR_SPACE

The space of color context to create.

[in, optional] profile

Type: const BYTE*

A buffer containing the ICC profile bytes used to initialize the color context when space is D2D1_COLOR_SPACE_CUSTOM. For other types, the parameter is ignored and should be set to NULL.

profileSize

Type: UINT32

The size in bytes of Profile.

[out] colorContext

Type: ID2D1ColorContext**

When this method returns, contains the address of a pointer to a new color context object.

Return value

Type: HRESULT

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

HRESULT Description
S_OK No error occurred.
E_OUTOFMEMORY Direct2D could not allocate sufficient memory to complete the call.
E_INVALIDARG An invalid value was passed to the method.

Remarks

The new color context can be used in D2D1_BITMAP_PROPERTIES1 to initialize the color context of a created bitmap.

When space is D2D1_COLOR_SPACE_CUSTOM, profile and profileSize must be specified. Otherwise, these parameters should be set to NULL and zero respectively. When the space is D2D1_COLOR_SPACE_CUSTOM, the model field of the profile header is inspected to determine if this profile is sRGB or scRGB and the color space is updated respectively. Otherwise the space remains custom.

Requirements

Requirement Value
Minimum supported client Windows 8 and Platform Update for Windows 7 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 and Platform Update for Windows Server 2008 R2 [desktop apps | UWP apps]
Target Platform Windows
Header d2d1_1.h
DLL D2d1.dll

See also

D2D1_BITMAP_PROPERTIES1

D2D1_COLOR_SPACE

ID2D1Bitmap1

ID2D1DeviceContext