색 관리 효과

색상 관리 효과를 사용하여 이미지를 한 ICC(국제 색 컨소시엄) 색 프로필에서 다른 색 프로필로 변환합니다. 효과는 ICC 사양에 따라 이미지를 변환합니다.

이 효과에 대한 CLSID는 CLSID_D2D1ColorManagement.

효과 속성

표시 이름 및 인덱스 열거형 Description
SourceContext
D2D1_COLORMANAGEMENT_PROP_SOURCE_COLOR_CONTEXT
원본 색 공간 정보입니다. ID2D1ColorContext 형식입니다.
기본값은 NULL입니다.
SourceIntent
D2D1_COLORMANAGEMENT_PROP_SOURCE_RENDERING_INTENT
사용할 ICC 렌더링 의도입니다. 형식이 D2D1_COLORMANAGEMENT_RENDERING_INTENT.
기본값은 D2D1_COLORMANAGEMENT_RENDERING_INTENT_PERCEPTUAL.
DestinationContext
D2D1_COLORMANAGEMENT_PROP_DESTINATION_COLOR_CONTEXT
대상 색 공간 정보입니다. ID2D1ColorContext 형식입니다.
기본값은 NULL입니다.
DestinationIntent
D2D1_COLORMANAGEMENT_PROP_DESTINATION_RENDERING_INTENT
사용할 ICC 렌더링 의도입니다. 형식이 D2D1_COLORMANAGEMENT_RENDERING_INTENT.
기본값은 D2D1_COLORMANAGEMENT_RENDERING_INTENT_PERCEPTUAL.
AlphaMode
D2D1_COLORMANAGEMENT_PROP_ALPHA_MODE
입력 이미지에 포함된 알파 데이터를 해석하는 방법입니다. 형식이 D2D1_COLORMANAGEMENT_ALPHA_MODE.
기본값은 D2D1_COLORMANAGEMENT_ALPHA_MODE_PREMULTIPLIED.
품질
D2D1_COLORMANAGEMENT_PROP_QUALITY
변환의 품질 수준입니다. 형식이 D2D1_COLORMANAGEMENT_QUALITY.
기본값은 D2D1_COLORMANAGEMENT_QUALITY_NORMAL.

렌더링 의도 모드

열거형 설명
D2D1_COLORMANAGEMENT_RENDERING_INTENT_PERCEPTUAL 이 효과는 이미지의 전체 색 영역을 압축하거나 확장하여 디바이스의 색 영역을 채우고 색 세부 정보를 유지하지만 색 정확도를 희생할 수 있는 지각적으로 만족스러운 출력을 생성합니다. 사진과 같은 실제 콘텐츠를 일반적으로 재현하는 데 유용합니다.
D2D1_COLORMANAGEMENT_RENDERING_INTENT_RELATIVE_COLORIMETRIC 이 효과는 출력 디바이스가 렌더링할 수 있는 가장 가까운 색으로 렌더링할 수 있는 영역 밖에 있는 모든 색을 조정합니다. 흰색 점은 유지되지 않습니다.
D2D1_COLORMANAGEMENT_RENDERING_INTENT_SATURATION 이 효과는 색상과 가벼움을 희생하여 이미지에서 순수한 색의 채도를 유지합니다. 차트 및 다이어그램과 같은 그래픽에 유용합니다.
D2D1_COLORMANAGEMENT_RENDERING_INTENT_ABSOLUTE_COLORIMETRIC 이 효과는 출력 디바이스가 렌더링할 수 있는 가장 가까운 색으로 렌더링할 수 있는 영역 밖에 있는 모든 색을 조정합니다. 효과는 영역 내 색을 변경하지 않고 흰색 점을 유지합니다.

입력 이미지 알파 모드

열거형 설명
D2D1_COLORMANAGEMENT_ALPHA_MODE_PREMULTIPLIED 효과는 알파 모드가 미리 곱하다고 가정합니다.
D2D1_COLORMANAGEMENT_ALPHA_MODE_STRAIGHT 효과는 알파 모드가 직선이라고 가정합니다.

D2D1_GAMMA1_G2084 동작 변경

애플리케이션이 D2D1_GAMMA1_G2084 공간 또는 SMPTE ST.2084(Perceptual Quantizer) 색 공간을 사용하는 DXGI_COLOR_SPACE_TYPE 열거형 값 중 하나를 사용하는 경우 애플리케이션은 HDR 데이터로 작업하려고 합니다.

ID2D1DeviceContext5::CreateColorContextFromSimpleColorProfileID2D1DeviceContext5::CreateColorContextFromDxgiColorSpace API는 이를 고려하지 않습니다. 오히려 HDR 콘텐츠는 G2084 DeGamma 작업 중에 0-1 범위에 맞게 조정됩니다.

실제로 이 감마 공간에서 인코딩된 콘텐츠는 일반적으로 CCCS에서 10,000/80 = 125.0으로 표현되는 10,000 Nits의 참조 WhiteLevel을 사용합니다. 따라서 앱의 용이성 향상을 위해 이 감마 변환이 광도를 125인 배율로 조정하는 것이 가장 간단합니다. Windows 10, 버전 1809(10.0; 빌드 17763), 색 관리 효과의 동작은 이 크기 조정을 적용합니다. 즉, 개발자는 파이프라인에 두 번째 흰색 수준 조정 효과를 적용할 필요가 없습니다.

ICC 사양 준수

색 관리 효과는 ICC v4.3 사양을 준수하며 다음과 같은 제한 사항이 있습니다.

  • 효과는 1, 3 및 4 채널 색 공간을 지원합니다.
  • 이 효과는 ColorSpace 또는 명명된 색 프로필을 지원하지 않습니다.

알파 채널 동작

일반적으로 원본 이미지에 알파 데이터가 없고 대상 이미지에 공간이 없는 경우 알파 데이터가 삭제되는 경우 효과는 알파를 1(불투명)으로 설정합니다. 여기 표에서는 알파 동작에 대해 설명합니다.

원본 색 영역, 픽셀 형식 대상 색 영역, 픽셀 형식 알파 동작
1 채널, R 픽셀 형식
1 채널, R 픽셀 형식 (알파 데이터 없음)
1 채널, RGBA 픽셀 형식 알파 데이터는 1(불투명)으로 설정됩니다.
3개 채널, RGBA 픽셀 형식 알파 데이터는 1(불투명)으로 설정됩니다.
4개 채널, RGBA 픽셀 형식 (알파 데이터 없음)
1 채널, RGBA 픽셀 형식
1 채널, R 픽셀 형식 알파 데이터가 삭제됨
1 채널, RGBA 픽셀 형식 알파 데이터를 통해 전달됩니다.
3개 채널, RGBA 픽셀 형식 알파 데이터를 통해 전달됩니다.
4개 채널, RGBA 픽셀 형식 알파 데이터가 삭제됨
3개 채널, RGBA 픽셀 형식
1 채널, R 픽셀 형식 알파 데이터가 삭제됨
1 채널, RGBA 픽셀 형식 알파 데이터를 통해 전달됩니다.
3개 채널, RGBA 픽셀 형식 알파 데이터를 통해 전달됩니다.
4개 채널, RGBA 픽셀 형식 알파 데이터가 삭제됨
4개 채널, RGBA 픽셀 형식
1 채널, R 픽셀 형식 (알파 데이터 없음)
1 채널, RGBA 픽셀 형식 알파 데이터가 1로 설정됨(불투명)
3개 채널, RGBA 픽셀 형식 알파 데이터가 1로 설정됨(불투명)
4개 채널, RGBA 픽셀 형식 (알파 데이터 없음)

품질 모드

Mode Description
D2D1_COLORMANAGEMENT_QUALITY_PROOF 가장 낮은 품질 모드입니다. 이 모드에는 기능 수준 9_1 이상이 필요합니다.
D2D1_COLORMANAGEMENT_QUALITY_NORMAL 표준 품질 모드입니다. 이 모드에는 기능 수준 9_1 이상이 필요합니다.
D2D1_COLORMANAGEMENT_QUALITY_BEST 최고 품질 모드입니다. 이 모드에는 부동 소수점 정밀도 버퍼뿐만 아니라 기능 수준 10_0 이상이 필요합니다. 이 모드는 ICC v4.3 사양에 정의된 대로 부동 소수점 정밀도와 확장 범위를 지원합니다.

애플리케이션이 하드웨어에서 지원하지 않는 품질 모드를 요청하는 경우 그리기 시 색 관리 효과가 실패합니다. D3D11CreateDevice를 호출할 때 기능 수준을 확인할 수 있습니다. D2D1_BUFFER_PRECISION_32BPC_FLOAT 값으로 ID2D1EffectContext::IsBufferPrecisionSupported를 호출하여 부동 소수점 버퍼 지원을 검사 수 있습니다.

예제 코드

이 효과의 예는 Direct2D 효과 사진 조정 샘플을 다운로드하고 샘플의 4단원을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7용 Windows 8 및 플랫폼 업데이트 [데스크톱 앱 | Windows 스토어 앱]
지원되는 최소 서버 Windows 7용 Windows 8 및 플랫폼 업데이트 [데스크톱 앱 | Windows 스토어 앱]
헤더 d2d1effects.h
라이브러리 d2d1.lib, dxguid.lib