SetStretchBltMode
Modifica el modo de estiramiento de mapas de bits para un determinado contexto de dispositivo.
Sintaxis
int SetStretchBltMode( HDC hdc, // manipulador de contexto de dispositivo int iStretchMode // modo de estiramiento de mapa de bits );
Parámetros:
hdc: identifica el contexto de dispositivo.
iStretchMode: especifica el modo de estiramiento. Puede ser cualquiera de los siguientes valores:
Valor | Descripción |
---|---|
BLACKONWHITE | Realiza una operación booleana AND usando los valores de color de los pixels eliminados o existentes. Si el mapa de bits es monocromo, este modo preserva los pixels negros a costa de los blancos. |
COLORONCOLOR | Borra los pixels. Este modo borra todas las líneas de pixels sin intentar preservar su información. |
HALFTONE | Proyecta los pixels desde el rectángulo fuente dentro de bloques de pixels
en el rectángulo destino. El color medio del bloque de pixels de destino
se aproxima al color de los pixels de origen. Después de activar el modo de estiramiento a HALFTONE, la aplicación debe llamar a la función SetBrushOrgEx para cambiar el origen del pincel. Si falla al hacerlo, habrá un desalineamiento del pincel. |
STRETCH_ANDSCANS | Windows 95: lo mismo que BLACKONWHITE. |
STRETCH_DELETESCANS | Windows 95: lo mismo que COLORONCOLOR. |
STRETCH_HALFTONE | Windows 95: lo mismo que HALFTONE. |
STRETCH_ORSCANS | Windows 95: lo mismo que WHITEONBLACK. |
WHITEONBLACK | Realiza una operación booleana OR usando los valores de color de los pixels eliminados o existentes. Si el mapa de bits es monocromo, este modo preserva los pixels blancos a cosa de los negros. |
Valor de retorno
Si la función tiene éxito, el valor de retorno es el valor previo del modo de estiramiento.
Si la función falla, el valor de retorno es cero.
Observaciones
El modo de estiramiento define como combina Windows las filas y columnas de un mapa de bits con los pixels existentes en la pantalla cuando una aplicación llama a la función StretchBlt.
Los modos BLACKONWHITE (STRETCH_ANDSCANS) y WHITEONBLACK (STRETCH_ORSCANS) se usan típicamente para conservar los pixels del fondo en mapas de bits monocromáticos. El modo COLORONCOLOR (STRETCH_DELETESCANS) se suele usar para conservar el color en mapas de bits en color.
El modo HALFTONE requiere más proceso de la imagen fuente que los otros tres modos; eso lo hace más lento que los otros, pero produce una mayor calidad en las imágenes. También hay que tener en cuenta que es necesario llamar a la función SetBrushOrgEx después de activar el modo HALFTONE para prevenir que se produzca un desalineamiento de los pinceles.
Pueden existir más modos de estiramiento dependiendo de las capacidades del manejador del dispositivo.