设备相关位图

【勇芳软件工作室】汉化HomePreviousNext

支持与设备相关的位图,仅与为3.0版之前的Windows版本编写的应用程序兼容。编写新应用程序的开发人员或将以前版本的Windows编写的应用程序移植到Win32平台时,应使用DIB。

DDB通过使用单个结构BITMAP结构来描述。该结构的成员指定矩形区域的宽度和高度,以像素为单位;将条目从设备调色板映射到像素的数组的宽度;以及器件的颜色格式,在每个像素的颜色平面和位数方面。应用程序可以通过调用GetDeviceCaps函数并指定适当的常量来检索设备的颜色格式。

DDB有两种类型:可丢弃和不可忽略。一个可丢弃的DDB是一个位图,如果位图没有被选择到DC中,并且系统内存不足,Windows就会丢弃。CreateDiscardableBitmap功能创建可丢弃的位图。CreateBitmapCreateCompatibleBitmapCreateBitmapIndirect功能创建不可忽略的位图。

应用程序可以通过初始化所需的结构并调用CreateDIBitmap函数从DIB创建DDB。在调用CreateDIBitmap时指定CBM_INIT等效于调用CreateCompatibleBitmap功能以设备格式创建DDB,然后调用SetDIBits功能将DIB位转换为DDB。要确定设备是否支持SetDIBits功能,请调用GetDeviceCaps功能,将RC_DI_BITMAP指定为RASTERCAPS标志。