_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 구조체 내에 포함되어 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|