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 |