CreateBitmapIndirect 함수(wingdi.h)

CreateBitmapIndirect 함수는 지정된 너비, 높이 및 색 형식(색 평면 및 픽셀당 비트)을 사용하여 비트맵을 만듭니다.

구문

HBITMAP CreateBitmapIndirect(
  [in] const BITMAP *pbm
);

매개 변수

[in] pbm

비트맵에 대한 정보를 포함하는 BITMAP 구조체에 대한 포인터입니다. 애플리케이션이 bmWidth 또는 bmHeight 멤버를 0으로 설정하는 경우 CreateBitmapIndirect 는 핸들을 1x1 픽셀인 흑백 비트맵으로 반환합니다.

반환 값

함수가 성공하면 반환 값은 비트맵에 대한 핸들입니다.

함수가 실패하면 반환 값은 NULL입니다.

이 함수는 다음 값을 반환할 수 있습니다.

반환 코드 설명
ERROR_INVALID_PARAMETER
하나 이상의 입력 매개 변수가 잘못되었습니다.
ERROR_NOT_ENOUGH_MEMORY
비트맵이 너무 커서 메모리를 할당할 수 없습니다.

설명

CreateBitmapIndirect 함수는 디바이스 종속 비트맵을 만듭니다.

비트맵을 만든 후 SelectObject 함수를 호출하여 디바이스 컨텍스트로 선택할 수 있습니다. 그러나 비트맵과 DC의 형식이 같은 경우에만 비트맵을 디바이스 컨텍스트로 선택할 수 있습니다.

CreateBitmapIndirect 함수를 사용하여 색 비트맵을 만들 수 있지만 성능상의 이유로 애플리케이션은 CreateBitmapIndirect를 사용하여 흑백 비트맵을 만들고 CreateCompatibleBitmap을 사용하여 색 비트맵을 만들어야 합니다. CreateBitmapIndirect의 색 비트맵이 디바이스 컨텍스트로 선택될 때마다 시스템은 비트맵이 선택한 디바이스 컨텍스트의 형식과 일치하는지 확인해야 합니다. CreateCompatibleBitmap은 디바이스 컨텍스트를 취하므로 지정된 디바이스 컨텍스트와 형식이 동일한 비트맵을 반환합니다. 따라서 CreateCompatibleBitmap의 색 비트맵이 CreateBitmapIndirect에서 반환된 색 비트맵보다 SelectObject에 대한 후속 호출이 더 빠릅니다.

비트맵이 단색인 경우 0은 전경색을 나타내고 대상 디바이스 컨텍스트의 배경색을 나타냅니다.

비트맵이 더 이상 필요하지 않으면 DeleteObject 함수를 호출하여 삭제합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 wingdi.h(Windows.h 포함)
라이브러리 Gdi32.lib
DLL Gdi32.dll

추가 정보

비트맵

Bitblt

비트맵 함수

비트맵 개요

CreateBitmap

CreateCompatibleBitmap

CreateDIBitmap

DeleteObject

Selectobject