Recuperación de las funcionalidades de una impresora

No todos los dispositivos de salida admiten todo el conjunto de funciones gráficas. Por ejemplo, debido a las limitaciones de hardware, la mayoría de los trazadores vectoriales no admiten transferencias de bloques de bits. Una aplicación puede determinar si un dispositivo admite una función gráfica determinada llamando a la función GetDeviceCaps , especificando el índice adecuado y examinando el valor devuelto.

En el ejemplo siguiente se muestra cómo una aplicación prueba una impresora para determinar si admite transferencias de bloques de bits.

// Examine the raster capabilities of the device  
// identified by hdcPrint to verify that it supports  
// the BitBlt function.  
 
if ((GetDeviceCaps(hdcPrint, RASTERCAPS) 
       & RC_BITBLT) == 0) 
{ 
   DeleteDC(hdcPrint); 
   break; 
} 

else 
{ 
    // Print the bitmap using the printer DC.  
}