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.
}