wingdi.h


GetDeviceCaps

La función GetDeviceCaps recupera una información específica del dispositivo sobre un dispositivo especificado.

Sintaxis

int GetDeviceCaps(
    HDC hdc,    // manipulador de contexto de dispositivo
    int nIndex  // índice del la capacidad a consultar
   );

Parámetros

hdc: especifica un contexto de dispositivo.

nIndex: especifica el ítem a devolver. Este parámetro puede ser uno de los siguientes valores:

Indice Significado
DRIVERVERSION Versión del driver del dispositivo.
TECHNOLOGY Tecnología del dispositivo. Puede ser uno de los siguientes valores:
Valor Significado
DT_PLOTTER Plotter vectorial
DT_RASDISPLAY Visualizador de líneas
DT_RASPRINTER Impresora
DT_RASCAMERA Cámara de líneas
DT_CHARSTREAM Stream de caracteres
DT_METAFILE Metafichero
DT_DISPFILE Fichero de visualización
Si el parámetro hdc identifica a un contexto de dispositivo de un metafichero mejorado, la tecnología del dispositivo es la que se usó para el dispositivo al llamar a la función CreateEnhMetaFile. Para determinar si se trata de un contexto de dispositivo de metafichero mejorado, usar la función GetObjectType.
HORZSIZE Anchura, en milímetros, de la pantalla física.
VERTSIZE Altura, en milímetros, de la pantalla física.
HORZRES Anchura, en pixels, de la pantalla.
VERTRES Altura, en líneas, de la pantalla.
LOGPIXELSX Número de pixels por pulgada lógica a lo largo de la anchura de la pantalla.
LOGPIXELSY Número de pixels por pulgada lógica a lo largo de la altura de la pantalla.
BITSPIXEL Número de bits adyacentes de color para cada pixel.
PLANES Número de planos de color.
NUMBRUSHES Número de pinceles específicos del dispositivo.
NUMPENS Número de plumas específicos del dispositivo.
NUMFONTS Número de fuentes específicos del dispositivo.
NUMCOLORS Número de entradas en la tabla de colores del dispositivo.
ASPECTX Anchura relativa de un pixel del dispositivo usado para el trazado de líneas.
ASPECTY Altura relativa de un pixel del dispositivo usado para el trazado de líneas.
ASPECTXY Anchura diagonal del pixel del dispositivo usado para el trazado de líneas.
PDEVICESIZE Reservado
CLIPCAPS Flag que indica las capacidades de recorte del dispositivo. Si el dispositivo puede recortar a un rectángulo, vale 1. En otro caso, 0.
SIZEPALETTE Número de entradas en la paleta del sistema. Este índice es válido sólo si el driver del dispositivo activa el bit RC_PALETTE en el índice RASTERCAPS y estará disponible sólo si el driver es compatible con versiones de Windows 3.0 o posteriores.
NUMRESERVED Número de entradas reservadas en la paleta del sistema. Este índice es válido sólo si el driver del dispositivo activa el bit RC_PALETTE en el índice RASTERCAPS y estará disponible sólo si el driver es compatible con versiones de Windows 3.0 o posteriores.
COLORRES Resolución de color actual del dispositivo, en bits por pixel. Este índice es válido sólo si el driver del dispositivo activa el bit RC_PALETTE en el índice RASTERCAPS y estará disponible sólo si el driver es compatible con versiones de Windows 3.0 o posteriores.
PHYSICALWIDTH Para dispositivos de impresión: la anchura física, en unidades de dispositivo.
PHYSICALHEIGHT Para dispositivos de impresión: la altura física, en unidades de dispositivo.
PHYSICALOFFSETX Para dispositivos de impresión: el margen horizontal del área física imprimible.
PHYSICALOFFSETY Para dispositivos de impresión: el margen vertical del área física imprimible.
SCALINGFACTORX Para dispositivos de impresión: el factor de escala a lo largo del eje horizontal.
SCALINGFACTORY Para dispositivos de impresión: el factor de escala a lo largo del eje vertical.
VREFRESH Sólo Windows NT: para dispositivos de visualización: la frecuencia de refresco vertical actual del dispositivo, en ciclos por segundo (Hz).
DESKTOPHORZRES Sólo Windows NT: anchura, en pixels, del escritorio virtual. Este valor puede ser mayor que HORZRES si el dispositivo soporta un escritorio virtual o múltiples displays.
DESKTOPVERTRES Sólo Windows NT: altura, en pixels, del escritorio virtual. Este valor puede ser mayor que VERTRES si el dispositivo soporta un escritorio virtual o múltiples displays.
BLTALIGNMENT Sólo Windows NT: alineamiento horizontal preferida de trazado, expresado como un múltiplo de pixels. Para comportamientos de trazados mejores, las ventanas debes ser alineadas horizontalmente a un múltiplo de ese valor. Un valor de cero indica que el dispositivo está acelerado, y puede usarse cualquier alineamiento.
RASTERCAPS Valor que indica las capacidades de raster del dispositivo, como se muestra en la siguiente tabla:
Capacidad Significado
RC_BANDING Precisa soporte de bandas.
RC_BITBLT Capaz de transferir mapas de bits.
RC_BITMAP64 Capaz de soportar mapas de bis mayores de 64K.
RC_DI_BITMAP Capaz de soportar las funciones SetDIBits y GetDIBits.
RC_DIBTODEV Capaz de soportar la función SetDIBitsToDevice.
RC_FLOODFILL Capaz de realizar llenados de superficies.
RC_GDI20_OUTPUT Capaz de soportar características de Windows 2.0.
RC_PALETTE Especifica un dispositivo basado en paleta.
RC_SCALING Capaz de escalar.
RC_STRETCHBLT Capaz de ejecutar la función StretchBlt.
RC_STRETCHDIB Capaz de ejecutar la función StretchDIBits.
CURVECAPS Valor que indica las capacidades de curvas del dispositivo, tal como se muestra en la siguiente tabla:
Valor Significado
CC_NONE El dispositivo no soporta curvas.
CC_CIRCLES El dispositivo puede trazar círculos.
CC_PIE El dispositivo puede trazar trozos de tarta.
CC_CHORD El dispositivo puede trazar arcos de elipse.
CC_ELLIPSES El dispositivo puede trazar elipses.
CC_WIDE El dispositivo puede trazar bordes anchos.
CC_STYLED El dispositivo puede trazar bordes con estilos.
CC_WIDESTYLED El dispositivo puede trazar bordes que sean anchos y con estilos.
CC_INTERIORS El dispositivo puede trazar interiores.
CC_ROUNDRECT El dispositivo puede trazar rectángulos con esquinas redondeadas.
LINECAPS Valor que indica las capacidades de línea del dispositivo, como se muestra en la siguiente tabla:
Valor Significado
LC_NONE EL dispositivo no soporta líneas.
LC_POLYLINE El dispositivo puede trazar líneas poligonales.
LC_MARKER El dispositivo puede trazar un marcador.
LC_POLYMARKER El dispositivo puede trazar múltiples marcadores.
LC_WIDE El dispositivo puede trazar líneas anchas.
LC_STYLED El dispositivo puede trazar líneas con estilos.
LC_WIDESTYLED El dispositivo puede trazar líneas anchas con estilos.
LC_INTERIORS El dispositivo puede trazar interiores.
POLYGONALCAPS Valor que indica las capacidades de polígonos del dispositivo, tal como se muestra en la siguiente tabla:
Valor Significado
PC_NONE El dispositivo no soporta polígonos rellenos.
PC_POLYGON El dispositivo puede trazar polígonos alternativamente rellenos.
PC_RECTANGLE El dispositivo puede trazar rectángulos rellenos.
PC_WINDPOLYGON El dispositivo puede trazar polígonos con rellenados tortuosos (winding-fill).
PC_SCANLINE El dispositivo puede trazar rellenados alternativos (scanline).
PC_WIDE El dispositivo puede trazar bordes anchos.
PC_STYLED El dispositivo puede trazar bordes con estilos.
PC_WIDESTYLED El dispositivo puede trazar bordes anchos con estilos.
PC_INTERIORS El dispositivo puede trazar interiores.
TEXTCAPS Valor que indica las capacidades de texto del dispositivo, tal como se muestra en las siguiente tabla:
Bit Significado
TC_OP_CHARACTER El dispositivo es capaz de mostrar caracteres con precisión.
TC_OP_STROKE El dispositivo es capaz de trazar caracteres resaltados.
TC_CP_STROKE El dispositivo es capaz de mostrar caracteres resaltados con precisión.
TC_CR_90 El dispositivo es capaz realizar rotaciones de caracteres de 90 grados.
TC_CR_ANY El dispositivo es capaz de realizar cualquier rotación de caracteres.
TC_SF_X_YINDEP El dispositivo puede escalar en las direcciones x e y independientemente.
TC_SA_DOUBLE El dispositivo es capaz de doblar la escala de los caracteres.
TC_SA_INTEGER El dispositivo usa sólo múltiplos enteros para escalar caracteres.
TC_SA_CONTIN EL dispositivo usa cualquier valor para escalar caracteres de forma exacta.
TC_EA_DOUBLE El dispositivo puede trazar caracteres de doble peso.
TC_IA_ABLE El dispositivo puede inclinar caracteres.
TC_UA_ABLE El dispositivo puede subrayar.
TC_SO_ABLE El dispositivo puede trazar negrita.
TC_RA_ABLE El dispositivo puede trazar fuentes raster (de líneas).
TC_VA_ABLE El dispositivo puede trazar fuentes vectoriales.
TC_RESERVED Reservado; debe ser cero.
TC_SCROLLBLT El dispositivo no pude hacer desplazamientos usando transferencias de bloques de bits. Nótese que esto puede significar lo contrario de lo que se espera.

Valor de retorno

El valor de retorno es el valor del ítem especificado.