참고> blog.naver.com/tipsware/220984197835
1. 모니터에 출력되는 영상은 '점(pixel) 단위'로 구성되어 있음
2. 해상도(resolution)
=> 컴퓨터의 그래픽 장치와 모니터에 따라서 출력되는 점의 밀도 차이가 발생
3. 비트맵(Bitmap) => Window 에 그리는 그림
=> 비트(bit)의 지도(map)
4. DDB(Device Dependent Bitmap) => 비트맵이 장치에 종속적인 형태 (장치에서 별다른 변환 작업 없이 바로 사용할 수 있는 형태)
5. Bitmap Header => 해상도가 다른 그래픽 장치에서는 비트맵이 자신의 해상도와 맞는지 점검이 필요하다. 필요시 비트맵을 변환하기도 한다. 이를 위해 비트맵에 대한 추가 정보가 필요한데, 이를 "비트맵 헤더(Bitmap Header)" 라고 한다.
6. DIB(Device-Independent Bitmap) => DDB + Bitmap Header
=> 장치가 달라지더라도 "비트맵 헤더"에 있는 정보를 보고 해당 장치에 맞도록 변환해서 사용 가능.
이런 비트맵은 특정 장치에 종속되지 않음
7. 예전에는 흑백(2색), 16색, 256색, 16비트 색상(Hi-Color)을 많이 사용했지만 최근에는 메모리 기술의 발달로
거의 대부분 24비트 색상 또는 32비트 색상(True-Color)을 사용
24비트 => Red, Green, Blue 당 1바이트씩
32비트 => Red, Green, Blue 당 1바이트씩 + 투명도(Alpha) 1 바이트
8. 32색상 비트맵이어도 많이 알려진 그래픽 함수들이 투명도를 바로 지원하지 않는 경우도 있음.
이럴 땐 투명도를 지원하는 별도의 함수를 사용하거나 추가적인 옵션을 설정해야지만 투명화가 적용됨.
9. Byte-Order => 1비트나 1바이트를 사용하는 색상 시스템은 관련없지만, 32비트처럼 여러 바이트를 사용하는 색상 시스템은 CPU에 따른 Byte-Order를 고려해야 함.
빅 엔디안: UNIX에서 사용하는 RISC 프로세서, 네트워크
리틀 엔디안: Intel계열 프로세서
'Study Memos > Windows Programming' 카테고리의 다른 글
GDI (Section 16) (0) | 2020.09.01 |
---|---|
BITMAP 구조체 (Section 15) (0) | 2020.09.01 |
Windows Message (Section 8) (0) | 2020.08.26 |
Windows Class (Section 7) (0) | 2020.08.24 |
Windows Event (Section 6) (0) | 2020.08.24 |