ºñÆ®¸Ê ±¸Á¶´Â ´ÙÀ½°ú °°Àº ÇüÅÂ:
typedef struct tagBITMAP {nbsp; / * bm * /
?? int bmType;
?? int bmWidth;
?? int bmHeight;
?? int bmWidthBytes;
?? ¹ÙÀÌÆ® bmPlanes;
?? ¹ÙÀÌÆ® bmBitsPixel;
?? LPVOID bmBits;
} ºñÆ®¸Ê(&N)
³ôÀÌ, ³Êºñ, »ö Çü½Ä ¹× ³í¸®Àû ºñÆ®¸Ê. ÀÇ ºñÆ® °ªÀ» Á¤ÀÇ ÇÏ´Â ºñÆ®¸Ê ±¸Á¶
ȸ¿ø
bmType
ºñÆ®¸Ê À¯ÇüÀ» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ±¸¼º¿øÀÌ 0 À̾î¾ß ³í¸®Àû ºñÆ®¸Ê¿¡ ´ë ÇÑ¡£
bmWidth
ºñÆ®¸ÊÀÇ ³Êºñ¸¦ Çȼ¿ ´ÜÀ§·Î ÁöÁ¤ ÇÕ´Ï´Ù. ³Êºñ´Â 0 º¸´Ù Ä¿¾ß ÇÕ´Ï´Ù.
bmHeight
·¡½ºÅÍ ÁÙ¿¡ ºñÆ®¸ÊÀÇ ³ôÀÌ ÁöÁ¤ÇÕ´Ï´Ù. ³ôÀÌ 0 º¸´Ù Ä¿¾ß ÇÕ´Ï´Ù.
bmWidthBytes
°¢ ·¡½ºÅÍ ¶óÀÎÀÇ ¹ÙÀÌÆ® ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ °ª¿¡´Â ±×·¡ÇÈ ÀåÄ¡ ÀÎÅÍÆäÀ̽º (GDI) °¡Á¤ ºñÆ®¸ÊÀÇ ºñÆ® °ªÀÌ Á¤¼ö (2 ¹ÙÀÌÆ®) °ªÀÇ ¹è¿À» Çü¼º ÀÌÈĴ ¦¼ö ¿©¾ß ÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, bmWidthBytes * 8 bmWidth ¸â¹ö°¡ bmBitsPixel ¸â¹ö¸¦ °öÇÑ ¶§ ¾òÀº °ª º¸´Ù Å©°Å³ª 16ÀÇ ´ÙÀ½ ¹è¼ö ¿©¾ß ÇÕ´Ï´Ù.
bmPlanes
ºñÆ®¸ÊÀÇ »ö ºñÇà±âÀÇ ¼ö¸¦ ÁöÁ¤ ÇÕ´Ï´Ù.
bmBitsPixel
Çȼ¿À» Á¤ÀÇ ÇÏ´Â µ¥ ÇÊ¿äÇÑ °¢ ºñÇà±â¿¡ ÀÎÁ¢ ÇÑ »ö»ó ºñÆ® ¼ö¸¦ ÁöÁ¤ ÇÕ´Ï´Ù.
bmBits
ºñÆ®¸Ê¿¡ ´ë ÇÑ ºñÆ® °ªÀÇ À§Ä¡¸¦ °¡¸®Åµ´Ï´Ù. BmBits ¸â¹ö´Â 1 ¹ÙÀÌÆ® °ªÀÇ ¹è¿¿¡ ±ä Æ÷ÀÎÅÍ ¿©¾ß ÇÕ´Ï´Ù.
ÄÚ¸àÆ®
ÇöÀç »ç¿ë µÇ´Â ºñÆ®¸Ê Çü½Ä¿¡´Â Èæ¹é ¹× Ä÷¯ÀÔ´Ï´Ù. ´Ü»ö ºñÆ®¸Ê 1 ºñÆ®, 1 ºñÇà±â Çü½ÄÀ» »ç¿ëÇÕ´Ï´Ù. °¢ °Ë»öÀº ¿©·¯ 16 ºñÆ®¡£
°Ë»ç ³ôÀÌ n ÀÇ ´Ü»ö ºñÆ®¸Ê¿¡ °°ÀÌ ±¸¼º:
°Ë»ö 0
1 ½ºÄµ
.
.
.
N-2 °Ë»ö
N-1À» ½ºÄµ
´Ü»ö ÀåÄ¡¿¡¼ Çȼ¿ÀÌ ¾î´À °ËÁ¤ ¶Ç´Â Èò»ö. ºñÆ®¸ÊÀÇ ÇØ´ç ºñÆ®°¡ 1 À̸é Çȼ¿ (Èò»ö)À¸·Î ¼³Á¤ µË´Ï´Ù. ºñÆ®¸ÊÀÇ ÇØ´ç ºñÆ®°¡ 0 ÀÎ °æ¿ì Çȼ¿ ²¨Á® (ºí·¢)¡£
¸ðµç ÀåÄ¡´Â CDC::GetDeviceCaps ¸â¹ö ÇÔ¼ö RASTERCAPS À妽º¿¡¼ RC_BITBLT ºñÆ® ¼³Á¤ µÈ ºñÆ®¸Ê Áö¿ø¡£
°¢ ¼ÒÀÚ´Â ÀÚü °íÀ¯ÀÇ »ö Çü½Ä. ÇϳªÀÇ ÀåÄ¡¿¡¼ ´Ù¸¥ ºñÆ®¸ÊÀ» Àü¼Û Çϱâ À§ÇØ »ç¿ë µÈ GetDIBits ¹× SetDIBits Windows ÇÔ¼ö¡£
Âü°í Ç׸ñnbsp;CBitmap::CreateBitmapIndirect(&N)