SetDIBits 함수(wingdi.h)
SetDIBits 함수는 지정된 DIB에 있는 색 데이터를 사용하여 호환되는 DDB(비트맵)의 픽셀을 설정합니다.
int SetDIBits(
[in] HDC hdc,
[in] HBITMAP hbm,
[in] UINT start,
[in] UINT cLines,
[in] const VOID *lpBits,
[in] const BITMAPINFO *lpbmi,
[in] UINT ColorUse
);
[in] hdc
디바이스 컨텍스트에 대한 핸들입니다.
[in] hbm
지정된 DIB의 색 데이터를 사용하여 변경할 호환되는 DDB(비트맵)에 대한 핸들입니다.
[in] start
lpvBits 매개 변수가 가리키는 배열의 디바이스 독립적 색 데이터에 대한 시작 검사 줄입니다.
[in] cLines
디바이스 독립적 색 데이터를 포함하는 배열에 있는 검사 줄의 수입니다.
[in] lpBits
바이트 배열로 저장된 DIB 색 데이터에 대한 포인터입니다. 비트맵 값의 형식은 lpbmi 매개 변수가 가리키는 BITMAPINFO 구조체의 biBitCount 멤버에 따라 달라집니다.
[in] lpbmi
DIB에 대한 정보를 포함하는 BITMAPINFO 구조체에 대한 포인터입니다.
[in] ColorUse
BITMAPINFO 구조체의 bmiColors 멤버가 제공되었는지 여부와 bmiColors에 명시적 빨강, 녹색, 파랑(RGB) 값 또는 팔레트 인덱스가 포함되어 있는지 여부를 나타냅니다. fuColorUse 매개 변수는 다음 값 중 하나여야 합니다.
값 | 의미 |
---|---|
|
색 테이블은 hdc 매개 변수로 식별된 디바이스 컨텍스트의 논리적 팔레트에 있는 16비트 인덱스의 배열로 구성됩니다. |
|
색 테이블이 제공되며 리터럴 RGB 값이 포함됩니다. |
함수가 성공하면 반환 값은 복사된 검사 줄의 수입니다.
함수가 실패하면 반환 값은 0입니다.
이 값은 다음 값일 수 있습니다.
반환 코드 | 설명 |
---|---|
|
하나 이상의 입력 매개 변수가 잘못되었습니다. |
비트맵 비트가 시스템 팔레트의 인덱스일 때 최적의 비트맵 그리기 속도를 가져옵니다.
애플리케이션은 GetSystemPaletteEntries 함수를 호출하여 시스템 팔레트 색 및 인덱스를 검색할 수 있습니다. 색 및 인덱스를 검색한 후 애플리케이션은 DIB를 만들 수 있습니다. 자세한 내용은 시스템 팔레트를 참조하세요.
hdc 매개 변수로 식별되는 디바이스 컨텍스트는 fuColorUse 매개 변수에 대해 DIB_PAL_COLORS 상수가 설정된 경우에만 사용됩니다. 그렇지 않으면 무시됩니다.
애플리케이션이 이 함수를 호출할 때 hbmp 매개 변수로 식별된 비트맵을 디바이스 컨텍스트로 선택해서는 안 됩니다.
검색 줄은 RLE 압축 비트맵을 제외하고 DWORD 에 맞춰야 합니다.
상향식 DIB의 원점은 비트맵의 왼쪽 아래 모서리입니다. 하향식 DIB의 원점은 비트맵의 왼쪽 위 모서리입니다.
Icm: 색 관리는 iEnableICM 매개 변수가 ICM_ON 설정된 SetICMMode를 호출하여 색 관리를 사용하도록 설정한 경우 수행됩니다. lpbmi로 지정된 비트맵에 감마 및 엔드포인트 멤버를 지정하는 BITMAPV4HEADER 또는 감마 및 엔드포인트 멤버 또는 profileData 및 profileSize 멤버를 지정하는 BITMAPV5HEADER 있는 경우 호출은 비트맵의 픽셀을 디바이스 컨텍스트의 원본 색 공간이 아닌 해당 멤버가 설명하는 색 공간에서 표현되는 것으로 처리합니다.
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | wingdi.h(Windows.h 포함) |
라이브러리 | Gdi32.lib |
DLL | Gdi32.dll |