SHGetInverseCMAP 함수(shlwapi.h)
[이 함수는 Windows XP 및 Windows Server 2003을 통해 사용할 수 있습니다. 이후 버전의 Windows에서는 변경되거나 사용하지 못할 수 있습니다.]
하프톤 팔레트에 대한 역색 테이블 매핑을 검색합니다.
구문
LWSTDAPI SHGetInverseCMAP(
[out] BYTE *pbMap,
[in] ULONG cbMap
);
매개 변수
[out] pbMap
형식: BYTE*
역 색 테이블 매핑을 수신하는BYTE 배열에 대한 포인터 또는 cbMap 매개 변수의 값에 따라 역 색 테이블 매핑의 캐시된 복사본에 대한 포인터를 수신하는 LPBYTE에 대한 포인터입니다.
[in] cbMap
형식: ULONG
pbMap이 가리키는 버퍼의 크기이며, 해당 내용도 정의합니다. 두 값이 인식됩니다.
(sizeof(BYTE*))
pbMap이 가리키는 버퍼는 역색 맵 테이블의 캐시된 복사본에 대한 포인터를 받습니다.
(32768)
pbMap이 가리키는 버퍼는 역색 맵 테이블의 복사본을 받습니다. 버퍼의 크기는 정확히 32,768바이트여야 합니다.
반환 값
형식: HRESULT
이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
역 색 매핑 테이블은 32,768바이트 테이블입니다. 여기에는 하프톤 색상표의 색 인덱스가 포함되어 있습니다. 각 인덱스는 555 형식으로 표현된 특정 RGB 값에 해당하는 버퍼의 위치에 저장됩니다. 이러한 페어링을 사용하면 원래 색의 근사치인 하프톤 팔레트에서 색을 찾을 수 있습니다.
예를 들어 색 #306040에 대한 근사치인 하프톤 팔레트에서 색을 결정하는 메서드는 다음과 같습니다.
- 색을 빨간색, 녹색 및 파란색 구성 요소로 분해합니다. 이 경우 빨간색 구성 요소가 0x30 녹색 구성 요소가 0x60 파란색 구성 요소가 0x40.
- 색을 555 형식으로 다시 조립합니다. 24비트 RGB 색을 555 형식으로 줄이기 위한 수식은 여기에 나와 있습니다.
((red / 8) << 10) + ((blue / 8) << 5) + (green / 8)
이 예제에서 555 형식의 값은 ((0x30/8) 10) << + ((0x60/8) 5) << + (0x40/8) = 6536입니다.
- 역 색 맵 테이블의 위치 6536에 저장된 인덱스 값은 색 #306040에 합당한 근사치인 하프톤 색상표의 색 인덱스입니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional, Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | shlwapi.h |
라이브러리 | Shlwapi.lib |
DLL | Shlwapi.dll(버전 5.0 이상) |