不是每个输出设备都支持整套Win32图形功能。例如,由于硬件限制,大多数矢量绘图仪不支持位块传输。应用程序可以通过调用GetDeviceCaps函数,指定适当的索引和检查返回值来确定设备是否支持特定的Win32图形功能。
以下示例显示应用程序如何测试打印机以确定它是否支持位块传输。
/*
*检查设备的光栅功能
*由hdcPrint识别以验证其是否支持
* BitBlt功能。
*/
if((GetDeviceCaps(hdcPrint,RASTERCAPS)
& RC_BITBLT) == 0) {
DeleteDC(hdcPrint);
break;
}
其他
/ *使用打印机DC打印位图。*/