다음을 통해 공유


WCS에서 GDI 함수 사용

GDI(그래픽 디바이스 인터페이스)에는 색 데이터를 사용하거나 작동하는 다양한 함수가 있습니다. 일부는 WCS에서 사용할 수 있으며 일부는 사용하지 않습니다. 다음 GDI 함수는 ICM과 관련이 있습니다.

WCS를 사용하는 디바이스 컨텍스트 함수

함수 설명
CreateCompatibleDC 해당 hdc 매개 변수를 통해 이 함수에 전달되는 디바이스 컨텍스트(DC)가 ICM에 대해 사용하도록 설정된 경우 함수가 만드는 DC도 ICM을 사용할 수 있습니다. 원본 및 대상 색 공간은 DC에 지정됩니다.
CreateDC pInitData 매개 변수가 가리키는 DEVMODE 구조체의 dmICMMethod 멤버를 적절한 값으로 설정하여 ICM을 사용하도록 설정할 수 있습니다. 자세한 내용은 DEVMODE 구조체의 플랫폼 SDK 설명서를 참조하세요.
ResetDC hdc 매개 변수로 지정된 디바이스 컨텍스트의 색 프로필은 lpInitData 매개 변수로 지정된 DEVMODE 구조체의 정보에 따라 다시 설정됩니다.

 

WCS를 사용하는 펜 및 브러시 함수

함수 설명
브러시 함수 브러시를 만들 때 색 관리가 수행되지 않습니다. 그러나 브러시를 ICM 지원 DC로 선택하면 색 관리가 수행됩니다.
CreatePen 펜을 만들 때 색 관리가 수행되지 않습니다. 그러나 브러시를 ICM 지원 DC로 선택하면 색 관리가 수행됩니다.
ExtCreatePen 펜을 만들 때 색 관리가 수행되지 않습니다. 그러나 브러시를 ICM 지원 DC로 선택하면 색 관리가 수행됩니다.
SelectObject 선택한 개체가 브러시 또는 펜인 경우 색 관리가 수행됩니다.
SetDCBrushColor WCS를 사용하도록 설정하면 색 관리가 수행됩니다.
SetDCPenColor WCS를 사용하도록 설정하면 색 관리가 수행됩니다.

 

WCS를 사용하는 텍스트 출력 함수

함수 Description
SetBkColor WCS를 사용하도록 설정하면 색 관리가 수행됩니다.
SetTextColor WCS를 사용하도록 설정하면 색 관리가 수행됩니다.

 

WCS를 사용하는 비트맵 함수

함수 Description
Bitblt 블릿이 발생할 때는 색 관리가 수행되지 않습니다.
CreateDIBitmap fuUsage 매개 변수는 lpbmi 매개 변수가 가리키는 BITMAPINFO 구조체의 bmiColors 멤버가 색 정보를 포함하거나 포함하지 않도록 지정합니다. 그렇지 않으면 이 비트맵에 대해 색 관리가 수행되지 않습니다. 비트맵은 색 관리를 사용하도록 설정하려면 BITMAPINFO 구조의 버전 4 또는 버전 5를 사용해야 합니다. 결과 비트맵의 내용은 비트맵을 만든 후 색과 일치하지 않습니다.
CreateDIBSection pbmi 매개 변수를 통해 전달된 BITMAPINFO 구조체가 버전 4 또는 버전 5가 아니면 색 관리가 수행되지 않습니다. 버전 4 또는 5인 경우 색 관리가 활성화되고 지정된 색 공간이 비트맵과 연결됩니다.
MaskBlt 블릿이 발생할 때는 색 관리가 수행되지 않습니다.
SelectObject 개체가 CreateDIBSection을 사용하여 만든 비트맵인 경우 색 관리가 수행됩니다. 비트맵의 색 공간은 대상 색 공간으로 사용됩니다.
SetDIBits 색 관리가 수행됩니다. 지정된 BITMAPINFO 구조가 버전 4 또는 버전 5가 아닌 경우 현재 DC의 색 프로필이 원본 색 공간 프로필로 사용됩니다. sRGB 공간이 없으면 sRGB 공간이 사용됩니다. 지정된 BITMAPINFO 구조체가 버전 4 또는 버전 5인 경우 비트맵 헤더에 지정된 색 공간 프로필이 원본 색 공간 프로필로 사용됩니다.
SetDIBitsToDevice 색 관리가 수행됩니다. 지정된 BITMAPINFO 구조가 버전 4 또는 버전 5가 아닌 경우 현재 디바이스 컨텍스트의 색 프로필이 원본 색 공간 프로필로 사용됩니다. 이 색 공간이 없으면 sRGB 색 공간이 사용됩니다. 지정된 BITMAPINFO 구조체가 버전 4 또는 버전 5인 경우 비트맵과 연결된 색 공간 프로필이 원본 색 공간으로 사용됩니다.
SetDIBColorTable 색 관리가 수행되지 않습니다.
Stretchblt 블릿이 발생할 때는 색 관리가 수행되지 않습니다.
StretchDIBits 색 관리가 수행됩니다. 지정된 BITMAPINFO 구조가 버전 4 또는 버전 5가 아닌 경우 현재 DC의 색 프로필이 원본 색 공간 프로필로 사용됩니다. sRGB 공간이 없으면 sRGB 공간이 사용됩니다. 지정된 BITMAPINFO 구조체가 버전 4 또는 버전 5인 경우 비트맵 헤더에 지정된 색 공간 프로필이 원본 색 공간 프로필로 사용됩니다.