다음을 통해 공유


CMTranslateRGBsExt 함수(icm.h)

정의된 형식의 비트맵을 다른 정의된 형식으로 변환하고 콜백 함수를 주기적으로 호출하여 진행 상황을 보고하고 호출 애플리케이션이 번역을 종료하도록 허용합니다.

구문

BOOL CMTranslateRGBsExt(
  HCMTRANSFORM   hcmTransform,
  LPVOID         lpSrcBits,
  BMFORMAT       bmInput,
  DWORD          dwWidth,
  DWORD          dwHeight,
  DWORD          dwInputStride,
  LPVOID         lpDestBits,
  BMFORMAT       bmOutput,
  DWORD          dwOutputStride,
  LPBMCALLBACKFN lpfnCallback,
  LPARAM         ulCallbackData
);

매개 변수

hcmTransform

사용할 색 변환을 지정합니다.

lpSrcBits

번역할 비트맵에 대한 포인터입니다.

bmInput

입력 비트맵 형식을 지정합니다.

dwWidth

입력 비트맵의 검색 줄당 픽셀 수를 지정합니다.

dwHeight

입력 비트맵의 검사 줄 수를 지정합니다.

dwInputStride

한 검색 줄의 시작부터 입력 비트맵의 다음 시작 부분에 이르는 바이트 수를 지정합니다. dwInputStride가 0으로 설정된 경우 CMM은 스캔 줄이 DWORD 정렬되도록 안쪽 여백으로 채워져 있다고 가정해야 합니다.

lpDestBits

번역된 비트맵을 배치할 대상 버퍼를 가리킵니다.

bmOutput

출력 비트맵 형식을 지정합니다.

dwOutputStride

한 검색 줄의 시작부터 입력 비트맵의 다음 시작 부분에 이르는 바이트 수를 지정합니다. dwOutputStride가 0으로 설정된 경우 CMM은 DWORD 정렬되도록 스캔 선을 채워야 합니다.

lpfnCallback

CMTranslateRGBsExt에서 주기적으로 호출하여 진행 상황을 보고하고 호출 프로세스가 번역을 취소할 수 있도록 하는 애플리케이션 제공 콜백 함수에 대한 포인터입니다. ( ICMProgressProcCallback을 참조하세요.)

ulCallbackData

예를 들어 진행 상황을 보고하는 번역을 식별하기 위해 콜백 함수로 다시 전달된 데이터입니다.

반환 값

이 함수가 성공하면 반환 값은 TRUE입니다.

이 함수가 실패하면 반환 값은 FALSE 이고 CMM은 SetLastError 를 호출하여 마지막 오류를 Winerror.h에 정의된 유효한 오류 값으로 설정해야 합니다.

설명

이 함수를 내보내려면 모든 CMM이 필요합니다.

대상 버퍼에 쓸 때 CMM은 스캔 줄이 DWORD 정렬되도록 패딩되었는지 확인해야 합니다.

입력 및 출력 형식이 색 변환과 호환되지 않으면 이 함수가 실패합니다.

입력 및 출력 비트맵 형식이 모두 BM_xRGBQUADS 경우와 같이 픽셀당 4바이트인 3개 채널인 경우 네 번째 바이트를 보존하고 출력 버퍼에 복사해야 합니다.

콜백 함수가 0을 반환하는 경우 처리를 취소해야 하며 CMTranslateRGBsExt 는 실패를 나타내기 위해 0을 반환해야 합니다. 출력 버퍼가 부분적으로 채워질 수 있습니다.

이 함수는 현재 위치 변환을 지원해야 합니다. 즉, 출력의 메모리 공간이 입력의 메모리 공간보다 작거나 같을 때마다 이 함수는 원본 및 대상 버퍼가 동일한 경우에도 비트맵 색을 변환할 수 있어야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
머리글 icm.h

참고 항목