다음을 통해 공유


_BITMAPINFOHEADER 구조체

_BITMAPINFOHEADER 구조체는 비디오 프레임의 형식을 정의합니다.

구문

typedef struct _tagBITMAPINFOHEADER {
  DWORD biSize;
  LONG  biWidth;
  LONG  biHeight;
  WORD  biPlanes;
  WORD  biBitCount;
  DWORD biCompression;
  DWORD biSizeImage;
  LONG  biXPelsPerMeter;
  LONG  biYPelsPerMeter;
  DWORD biClrUsed;
  DWORD biClrImportant;
} _BITMAPINFOHEADER;

멤버

biSize

구조체에 필요한 바이트 수를 지정합니다.

biWidth

비트맵의 너비를 픽셀 단위로 지정합니다.

biHeight

비트맵의 높이를 픽셀 단위로 지정합니다. biHeight가 양수이면 비트맵은 상향식 DIB이고 원점은 왼쪽 아래 모서리입니다. biHeight가 음수이면 비트맵은 하향식 DIB이고 원점은 왼쪽 위 모서리입니다. biHeight가 하향식 DIB를 나타내는 음수이면 biCompression은 BI_RGB 또는 BI_BITFIELDS 합니다. 하향식 DIB는 압축할 수 없습니다.

biPlanes

대상 디바이스의 평면 수를 지정합니다. 이 값은 1로 설정해야 합니다.

biBitCount

픽셀당 비트 수를 지정합니다. BITMAPINFOHEADER 구조체의 biBitCount 멤버는 각 픽셀을 정의하는 비트 수와 비트맵의 최대 색 수를 결정합니다. 이 멤버는 다음 값 중 하나여야 합니다.

Description
1 비트맵은 단색이며 bmiColors 멤버에는 두 개의 항목이 포함됩니다. 비트맵 배열의 각 비트는 픽셀을 나타냅니다. 비트가 명확하면 픽셀은 bmiColors 테이블에서 첫 번째 항목의 색으로 표시됩니다. 비트가 설정되면 픽셀의 표에 있는 두 번째 항목의 색이 있습니다.
2 비트맵에는 네 개의 가능한 색 값이 있습니다.
4 비트맵에는 최대 16가지 색이 있으며 bmiColors 멤버에는 최대 16개의 항목이 포함됩니다. 비트맵의 각 픽셀은 색 테이블에 4비트 인덱스로 표시됩니다. 예를 들어 비트맵의 첫 번째 바이트가 0x1F 경우 바이트는 2픽셀을 나타냅니다. 첫 번째 픽셀은 두 번째 테이블 항목의 색을 포함하고 두 번째 픽셀은 16번째 테이블 항목의 색을 포함합니다.
8 비트맵은 최대 256가지 색을 가지며, bmiColors 멤버에는 최대 256개의 항목이 포함됩니다. 이 경우 배열의 각 바이트는 단일 픽셀을 나타냅니다.
16 비트맵의 최대 색은 2^16개입니다. BITMAPINFOHEADER의 biCompression 멤버가 BI_RGB 경우 bmiColors 멤버는 NULL입니다. 비트맵 배열의 각 WORD는 단일 픽셀을 나타냅니다. 빨간색, 녹색 및 파란색의 상대적 강도는 각 색 구성 요소에 대해 5비트로 표시됩니다. 파란색 값은 가장 중요한 5비트이고 녹색과 빨간색의 경우 각각 5비트입니다. 가장 중요한 비트는 사용되지 않습니다. bmiColors 색 테이블은 색상표 기반 디바이스에서 사용되는 색을 최적화하는 데 사용되며 biClrUsed 멤버가 지정한 항목 수를 포함해야 합니다.
24 비트맵은 최대 2^24색이고 bmiColors 멤버는 NULL입니다. 비트맵 배열의 각 3 바이트 트리플렛은 각각 픽셀에 대해 파란색, 녹색 및 빨간색의 상대적 강도를 나타냅니다. bmiColors 색 테이블은 색상표 기반 디바이스에서 사용되는 색을 최적화하는 데 사용되며 biClrUsed 멤버가 지정한 항목 수를 포함해야 합니다.
32 비트맵의 색은 최대 2^32개입니다. biCompression 멤버가 BI_RGB 경우 bmiColors 멤버는 NULL입니다. 비트맵 배열의 각 DWORD는 픽셀에 대해 각각 파란색, 녹색 및 빨간색의 상대적 강도를 나타냅니다. 각 DWORD의 높은 바이트는 사용되지 않습니다. bmiColors 색 테이블은 색상표 기반 디바이스에서 사용되는 색을 최적화하는 데 사용되며 biClrUsed 멤버가 지정한 항목 수를 포함해야 합니다.

biCompression

압축된 상향식 비트맵에 대한 압축 유형을 지정합니다(하향식 DIB는 압축할 수 없음). 이 멤버는 다음 값 중 하나일 수 있습니다.

Description
BI_RGB 압축되지 않은 형식입니다.
BI_BITFIELDS 비트맵이 압축되지 않고 색 테이블이 각 픽셀의 빨간색, 녹색 및 파란색 구성 요소를 각각 지정하는 세 개의 DWORD 색 마스크로 구성되도록 지정합니다. 이는 16bpp 및 32bpp 비트맵과 함께 사용할 때 유효합니다. 이 값은 Microsoft Windows CE 버전 2.0 이상에서 유효합니다.

biSizeImage

이미지의 크기를 바이트 단위로 지정합니다. BI_RGB 비트맵의 경우 0으로 설정할 수 있습니다.

biXPelsPerMeter

비트맵에 대한 대상 디바이스의 가로 해상도(미터당 픽셀)를 지정합니다. 애플리케이션은 이 값을 사용하여 현재 디바이스의 특성과 가장 일치하는 리소스 그룹에서 비트맵을 선택할 수 있습니다.

biYPelsPerMeter

비트맵에 대한 대상 디바이스의 세로 해상도(미터당 픽셀)를 지정합니다.

biClrUsed

비트맵에서 실제로 사용되는 색 테이블의 색 인덱스 수를 지정합니다. 이 값이 0이면 비트맵은 biCompression으로 지정된 압축 모드에 대해 biBitCount 멤버 값에 해당하는 최대 색 수를 사용합니다.

biClrImportant

비트맵을 표시하는 데 필요한 색 인덱스 수를 지정합니다. 이 값이 0이면 모든 색이 필요합니다.

biClrUsed가 0이 아니고 biBitCount 멤버가 16보다 작은 경우 biClrUsed 멤버는 그래픽 엔진 또는 디바이스 드라이버가 액세스하는 실제 색 수를 지정합니다. biBitCount가 16 이상인 경우 biClrUsed 멤버는 시스템 색상표의 성능을 최적화하는 데 사용되는 색 테이블의 크기를 지정합니다. biBitCount가 16 또는 32인 경우 최적의 색상표는 세 개의 DWORD 마스크 바로 다음에 시작됩니다.

비트맵이 압축된 비트맵(비트맵 배열이 _BITMAPINFOHEADER 구조 바로 뒤에 있고 단일 포인터로 참조되는 비트맵)인 경우 biClrUsed 멤버는 0이거나 색 테이블의 실제 크기여야 합니다.

설명

이 구조체는 _VIDEOINFOHEADER 구조체 내에 포함되어 있습니다.

요구 사항

요구 사항
헤더
Wmdm.idl

추가 정보

구조체

_VIDEOINFOHEADER