다음을 통해 공유


sRGB: 표준 색 공간

인터넷 대역폭 고려 사항의 결과로 Hewlett-Packard 및 Microsoft는 데이터 오버헤드가 거의 없는 정확한 색 매핑을 허용하기 위해 sRGB(IEC 61966-2-1)로 알려진 표준 미리 정의된 색 공간을 채택할 것을 제안했습니다.

sRGB, sRGB.hlp의 기술 세부 정보를 설명하는 백서의 도움말 파일 버전은 WCS 1.0 프로그래머 참조의 \Help 폴더에서 사용할 수 있습니다.

다른 파일 형식은 이미지를 sRGB 색 공간에 지정하기 위해 플래그를 사용하거나 추가할 수 있습니다. Windows DIB(디바이스 독립적 비트맵) 형식에서 BITMAPV5HEADER 구조체의 bV5CSType 멤버를 LCS_sRGB 설정하면 DIB 색이 sRGB 색 공간에 있음을 지정합니다.

WCS 1.0은 sRGB에 대한 기본 지원을 제공합니다. sRGB 색 공간에 정의된 이미지를 렌더링하는 데 WCS 1.0을 사용하는 방법에는 두 가지가 있습니다.

디바이스 컨텍스트 내에서 이미지를 렌더링하려면

  1. 디스플레이 디바이스에서 DC(디바이스 컨텍스트)를 만듭니다.
  2. SetICMMode 함수를 사용하여 색 관리를 설정합니다.
  3. SetDIBitsToDevice 함수를 사용하여 DIB를 DC로 전송합니다. DIB BITMAPV5HEADER 구조체의 bV5CSMType 멤버가 LCS_sRGB 설정된 한 시스템은 적절한 색 관리를 수행합니다.

디바이스 컨텍스트 외부에서 이미지를 렌더링하려면

  1. CreateColorTransformW를 사용하여 변환을 만듭니다. pLogColorSpace 매개 변수가 가리키는 LOGCOLORSPACE 구조체의 lcsCSType 멤버는 LCS_sRGB 설정해야 합니다. hDestProfile 매개 변수는 디스플레이 디바이스의 색 공간을 나타냅니다.
  2. 만든 색 변환을 사용하여 디바이스에 표시하기 전에 이미지와 일치하는 색을 지정합니다.

입력 색 공간 및 출력 프로필에 대한 WCS 1.0 기본값

입력 색 공간을 지정하지 않으면 기본적으로 WCS 1.0은 색 매핑을 위한 입력 색 공간으로 sRGB 공간을 사용합니다.

출력 프로필을 지정하지 않고 기본 디바이스를 지정하면 WCS 1.0에서 기본 출력 프로필을 선택합니다. 기본 디바이스에 연결된 프로필이 없는 경우 WCS 1.0은 sRGB 색 공간을 출력 프로필로 사용합니다.

다음 표에서는 기본 디바이스를 사용할 수 없는 경우의 결과 색 변환을 보여 줍니다.

  출력 프로필 지정됨 출력 프로필이 지정되지 않음
지정된 입력 색 공간 변환은 지정된 프로필을 사용합니다. 변환은 알려진 입력 색 공간에서 sRGB로 변환합니다.
입력 색 공간이 지정되지 않음 변환은 sRGB에서 알려진 출력 프로필로 변환됩니다. sRGB에서 sRGB로의 변환이 가정됩니다. 아무 작업도 수행되지 않습니다.

 

sRGB 및 포함된 프로필

ICM 버전 2.0부터 WCS를 활용하는 애플리케이션은 이미지에 프로필을 포함할 수 있습니다. 포함된 프로필은 이미지가 인터넷을 통해 전송되더라도 일관된 색 모양을 유지하는 데 사용자의 애플리케이션을 지원합니다.

sRGB 색 공간을 사용하는 이미지는 포함된 색 프로필이 필요하지 않습니다. 포함된 프로필이 없으므로 sRGB 기반 이미지는 대역폭이 제한된 데이터 채널에서 더 작고 쉽게 전송할 수 있습니다.

애플리케이션은 이미지의 비트맵 헤더에 LCS_sRGB 플래그를 설정하여 이미지가 sRGB 색 공간을 사용함을 나타내야 합니다. 자세한 내용은 Windows 비트맵 헤더 구조LOGCOLORSPACE를 참조하세요.