尽管DDF_UPDAT和DDF_DONTDRAW可以在不同时间设置,它们可以一起用来创建脱屏图象。当脱屏图象完成后,可以调用DrawDibDraw来显示图象。
DrawDibEnd
这个函数清除由DrawDibBegin或DrawDibDraw函数设置的标志和DrawDib DC的其它设置。
BOOL DrawDibEnd(
HDRAWDIB hdd
);
参数
hdd 要释放的DrawDib DC的句柄。
返回值
成功返回TRUE,否则FALSE。
DrawDibGetBuffer
这个函数清除由DrawDib用来解压的缓冲的地址。
LPVOID DrawDibGetBuffer(
HDRAWDIB hdd,
LPBITMAPINFOHEADER lpbi,
DWORD dwSize,
DWORD dwFlags
);
参数
hdd 要释放的DrawDib DC的句柄。
lpbi BITMAPINFO结构的地址。这个结构由BITMAPINFOHEADER结构和位图使用的256色调色板所定义的颜色表。 dwSize 通过lpbi的BITMAPINFO结构所指的字节大小。
dwFlags 保留,必须为0。
返回值
返回缓冲的地址或者如果没有用到缓冲返回NULL。如果lpbi不为NULL,它填充了一个描绘缓冲的BITMAPINFO的结构。
DrawDibGetPalette
这个函数清除由DrawDib DC所使用的调色板。
HPALETTE DrawDibGetPalette(
HDRAWDIB hdd
);
参数
hdd 要释放的DrawDib DC的句柄。
返回值
成功返回一个调色板句柄,否则返回NULL。
注 这个函数假设DrawDib DC包含了一个有效的调色板,隐含着这样的一个条件:对这个函数的调用必须在DrawDibDraw或DrawDibBegin函数之后。
DrawDibOpen
这个函数打开DrawDib库为使用和创建一个绘图的DrawDib DC作准备。
HDRAWDIB DrawDibOpen(VOID);
参数
这个函数不需要参数。
返回值
成功返回一个DrawDib DC的句柄,否则为NULL。
注 当同时绘多个DIB时,为同时在屏的每个图象创建一个DrawDib DC。
DrawDibProfileDisplay
这个函数决定了当用DrawDib函数时显示系统的设置。
BOOL DrawDibProfileDisplay(
LPBITMAPINFOHEADER lpbi
);
参数
lpbi 包含位图信息的BITMAPINFOHEADER结构。可以通过指定NULL来确认配置信息是当前的。如果配置信息不是当前的,DrawDib会重新运行配置测试来得到当前设置信息。如果把这个参数设为NULL来调用DrawDibProfileDisplay返回值是没有意义的。
返回值
返回值指出了这个显示系统的最快绘制和拉伸能力。如果位图格式不被支持,这个值为0或一个或更多的下列值:
PD_CAN_DRAW_DIB DrawDib能用这种格式绘图象。拉伸可能被支持或不被支持。
PD_CAN_STRETCHDIB DrawDib能用这种格式拉伸或绘制图象。
PD_STRETCHDIB _1_1_OK StretchDIBits用这种格式绘未拉伸的图象快于另一种方式。
PD_STRETCHDIB _1_2_OK StretchDIBits用这种格式绘以1:2拉伸的图象快于另一种方式。
PD_STRETCHDIB _1_N_OK StretchDIBits用这种格式绘以1:N拉伸的图象快于另一种方式。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-27468-14.html
哪个项目有钱赚
期待你的小王子