Función PlgBlt (wingdi.h)

La función PlgBlt realiza una transferencia de bloques de bits de los bits de datos de color del rectángulo especificado en el contexto del dispositivo de origen al paralelismo especificado en el contexto del dispositivo de destino. Si el identificador de máscara de bits determinado identifica un mapa de bits monocromático válido, la función usa este mapa de bits para enmascarar los bits de datos de color del rectángulo de origen.

Sintaxis

BOOL PlgBlt(
  [in] HDC         hdcDest,
  [in] const POINT *lpPoint,
  [in] HDC         hdcSrc,
  [in] int         xSrc,
  [in] int         ySrc,
  [in] int         width,
  [in] int         height,
  [in] HBITMAP     hbmMask,
  [in] int         xMask,
  [in] int         yMask
);

Parámetros

[in] hdcDest

Controlar el contexto del dispositivo de destino.

[in] lpPoint

Puntero a una matriz de tres puntos en el espacio lógico que identifica tres esquinas del paralelograma de destino. La esquina superior izquierda del rectángulo de origen se asigna al primer punto de esta matriz, la esquina superior derecha al segundo punto de esta matriz y la esquina inferior izquierda al tercer punto. La esquina inferior derecha del rectángulo de origen se asigna al cuarto punto implícito del paralelogramo.

[in] hdcSrc

Identificador del contexto del dispositivo de origen.

[in] xSrc

Coordenada x, en unidades lógicas, de la esquina superior izquierda del rectángulo de origen.

[in] ySrc

Coordenada y, en unidades lógicas, de la esquina superior izquierda del rectángulo de origen.

[in] width

Ancho, en unidades lógicas, del rectángulo de origen.

[in] height

Alto, en unidades lógicas, del rectángulo de origen.

[in] hbmMask

Identificador de un mapa de bits monocromo opcional que se usa para enmascarar los colores del rectángulo de origen.

[in] xMask

Coordenada x, en unidades lógicas, de la esquina superior izquierda del mapa de bits monocromo.

[in] yMask

Coordenada y, en unidades lógicas, de la esquina superior izquierda del mapa de bits monocromático.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero.

Comentarios

La función PlgBlt funciona con mapas de bits dependientes del dispositivo.

El cuarto vértice del paralelismo (D) se define tratando los tres primeros puntos (A, B y C) como vectores y computación D = B +CA.

Si existe la máscara de bits, un valor de uno de la máscara indica que el color del píxel de origen debe copiarse en el destino. Un valor de cero en la máscara indica que no se va a cambiar el color del píxel de destino. Si el rectángulo de máscara es menor que los rectángulos de origen y destino, la función replica el patrón de máscara.

Las transformaciones de escalado, traducción y reflexión se permiten en el contexto de dispositivo de origen, pero no las transformaciones de rotación y distorsión. Si el mapa de bits de máscara no es un mapa de bits monocromático, se produce un error. El modo de extensión para el contexto de dispositivo de destino se usa para determinar cómo se estiran o se comprimen los píxeles, si es necesario.

Cuando se registra un metarchivo mejorado, se produce un error si el contexto de dispositivo de origen identifica un contexto de dispositivo de metarchivo mejorado.

Las coordenadas de destino se transforman según el contexto de dispositivo de destino; las coordenadas de origen se transforman según el contexto de dispositivo de origen. Si la transformación de origen tiene una rotación o distorsión, se devuelve un error.

Si los rectángulos de origen y de destino no tienen el mismo formato de color, PlgBlt convierte el rectángulo de origen para que coincida con el rectángulo de destino.

No todos los dispositivos admiten la función PlgBlt . Para obtener más información, vea la descripción de la funcionalidad de RC_BITBLT ráster en la función GetDeviceCaps .

Si los contextos de dispositivo de origen y destino representan dispositivos incompatibles, PlgBlt devuelve un error.

Cuando se usa en un sistema de supervisión múltiple, hdcSrc y hdcDest deben hacer referencia al mismo dispositivo o se producirá un error en la función. Para transferir datos entre controladores de dominio para distintos dispositivos, convierta el mapa de bits de memoria en un DIB mediante una llamada a GetDIBits. Para mostrar la DIB en el segundo dispositivo, llame a SetDIBits o StretchDIBits.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado wingdi.h (incluye Windows.h)
Library Gdi32.lib
Archivo DLL Gdi32.dll

Consulte también

BitBlt

Funciones de mapa de bits

Información general sobre mapas de bits

GetDIBits

GetDeviceCaps

MaskBlt

SetDIBits

SetStretchBltMode

StretchBlt

StretchDIBits