wingdi.h


BitBlt

Realiza una transferencia de un bloque de datos de colores correspondiente a un rectángulo de pixels desde el contexto de dispositivo de origen especificado al contexto de dispositivo destino.

Sintaxis

BOOL BitBlt(
    HDC hdcDest, // manipulador del contexto de dispositivo destino
    int nXDest,  // coordenada x de la esquina superior izquierda del rectángulo de destino
    int nYDest,  // coordenada y de la esquina superior izquierda del rectángulo de destino
    int nWidth,  // anchura del rectángulo de destino
    int nHeight, // altura del rectángulo de destino
    HDC hdcSrc,  // manipulador de contexto de dispositivo de origen
    int nXSrc,   // coordenada x de la esquina superior izquierda del rectángulo de origen
    int nYSrc,   // coordenada y de la esquina superior izquierda del rectángulo de origen
    DWORD dwRop  // código de operación de rastreo
   );

Parámetros:

hdcDest: identifica el contexto de dispositivo de destino.

nXDest: especifica la coordenada x, en unidades lógicas, de la esquina superior izquierda del rectángulo de destino.

nYDest: especifica la coordenada y, en unidades lógicas, de la esquina superior izquierda del rectángulo de destino.

nWidth: especifica la anchura, en unidades lógicas, del rectángulo de destino.

nHeight: especifica la altura, en unidades lógicas, del rectángulo de destino.

hdcSrc: identifica el contexto de dispositivo de origen.

nXSrc: especifica la coordenada x, en unidades lógicas, de la esquina superior izquierda del rectángulo de origen.

nYSrc: especifica la coordenada y, en unidades lógicas, de la esquina superior izquierda del rectángulo de origen.

dwRop: especifica la operación de rastreo. Estos códigos definen cómo se combinan los colores en el rectángulo de salida para obtener el color final.

La siguiente lista muestra algunos códigos de operación de rastreo comunes:

Valor Descripción
BLACKNESS Rellena el rectángulo de destino usando el color asociado al índice 0 de la paleta física. (Este color es negro para la paleta física por defecto.)
DSTINVERT Invierte el rectángulo de destino.
MERGECOPY Mezcla los colores en el rectángulo de origen con el patrón especificado usando la operación booleana AND.
MERGEPAINT Mezcla los colores invertidos del rectángulo de origen con los colores del rectángulo de destino usando la operación boolena OR.
NOTSRCCOPY Copia el rectángulo de origen invertido al rectángulo de destino.
NOTSRCERASE Combina los colores de los rectángulos de origen y destino usando el operador booleno OR y después invierte el color resultante.
PATCOPY Copia el patrón especificado en el mapa de bits de destino.
PATINVERT Combina los colores del patrón especificado con los colores en el rectángulo destino usando el operador boolenao XOR.
PATPAINT Combina los colores del patrón con los colores invertidos del rectángulo de origen usando el operador booleano OR. El resultado de esta operación se combina con los colores del rectángulo de destino usando el operador booleano OR.
SRCAND Combina los colores de los rectángulos de origen y destino usando el operador booleano AND.
SRCCOPY Copia el rectángulo de origen directamente en el rectángulo de destino.
SRCERASE Combina los colores invertidos el rectángulo de destino con los colores del rectángulo de origen usando el operador booleano AND.
SRCINVERT Combina los colores de los rectángulos de origen y destino usando el operador booleano XOR.
SRCPAINT Combina los colores de los rectángulos de origen y destino usando el operador booleano OR.
WHITENESS Rellena el rectángulo de destino usando el color asociado al índice 1 de la paleta física. (Este color es blanco para la paleta física por defecto.)

Valor de retorno

Si la función tiene éxito, el valor de retorno es TRUE.

Si la función falla, el valor de retorno es FALSE. Para obtener información más detallada sobre el error, llamar a la función GetLastError.

Observaciones

Si tiene efecto una transformación de rotación o recorte en el contexto de dispositivo de origen, BitBlt vuelve con error. Si existen otras transformaciones en el contexto de dispositivo de origen (y no se realiza una transformación igual en el contexto de dispositivo de destino), el rectángulo en el contexto de dispositivo de destino es estirado, comprimido o rotado como sea necesario.

Si los formatos de color en el contexto de dispositivo de origen o destino no coinciden, la función BitBlt convierte el formato de colore del origen para que coincida con el de destino.

Cuando se comienza a grabar un metafile mejorado, ocurre un error si el contexto de dispositivo origen identifica a un contexto de dispositivo de un metafile mejorado.

No todos los dispositivos soportan la función BitBlt. Para mayor información, ver la entrada para la capacidad de rastreo RC_BITBLT en la función GetDeviceCaps.

BitBlt devuelve un error si los contextos de dispositivo de origen y destino representan a diferentes dispositivos.