본문 바로가기

Study Memos/Windows Programming

Bitmap (Section 13)

참고> blog.naver.com/tipsware/220984197835

 

비트맵에 대하여

: Win32 프로그래밍 관련 전체 목차http://blog.naver.com/tipsware/221059977193 1. 컴퓨터의 화면 출력 ...

blog.naver.com

 

참고> genesis8.tistory.com/37

 

리틀 엔디안 VS 빅 엔디안

먼저 둘을 비교하기에 앞서 엔디언이란 무엇인가? 엔디언(Endianness)은 컴퓨터의 메모리와 같은 1차원의 공간에 여러 개의 연속된 대상을 배열하는 방법을 뜻하며, 바이트를 배열하는 방법을 특히

genesis8.tistory.com

 

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