비트맵은 메모리 저장시, 가로 버퍼의 크기는 항상 4 바이트의 배수가 되어야 한다.
실제 사용하는 이미지의 가로 크기가 4 바이트의 배수가 아니어도 4 배수 바이트로 바꾸어 저장을 한다.
예를 들어 BMP 데이터의 Width x Height = 78px X 60px일 경우 78byte가 4의 배수가 아니기 때문에 80byte로 만들어 처리를 한다.
따라서 실제 저장되는 메모리는 80px X 60px의 크기가 된다.
BITMAPINFOHEADER 구조체의 biWidth, biHeight, biBitCount 값을 사용
#define WIDTHBYTES(bits) (((bits)+31)/32*4) //4 바이트 배수로 변환 호출시: rwsize = WIDTHBYTES(biBitCount * biWidth); |
<참고>Visual C++을 이용한 영상처리
'Digital Image Processing' 카테고리의 다른 글
GDI+ DrawString, Font 오류 문제 (0) | 2014.08.14 |
---|---|
Hit Testing Lines and Curves (라인, 커브 등 오브젝트를 선택하는 방법) (0) | 2014.07.02 |
Use of Two-Dimensional Vectors with Windows NT (0) | 2014.07.02 |
PtInRegion() API 대체 방법 (0) | 2014.07.02 |