SetStretchBltMode函数设置在指定设备内容中的伸展模式。
int SetStretchBltMode(
HDC hdc, // DC的HANDLE
int iStretchMode // 位图伸展模式
);
Hdc:输入,设备内容的HANDLE
iStretchMode:输入,指定的伸展模式,参数可以下面值之一:
| 值
| 描述
|
| BLACKONWHITE
| 执行一个布尔AND操作在要删除的存在的图素上。如果位图是一个单色位图,这个模式保留黑色的像素为白色的像素。
|
| COLORONCOLOR
| 删除像素,这个模式删除所有待删除的像素行,而不保留他们的信息。
|
| HALFTONE
| 从源矩形映射像素到指定的目标矩形。目标和源矩形的平均颜色是相似的。
在设置HALFTON伸展模式之后,应用程序必须调用SetBrushOrgEx函数来设置刷源。如果该调用失败了,刷子将不对齐。
This option is not supported on Windows 95/98/Me.
|
| STRETCH_ANDSCANS
| Same as BLACKONWHITE.
|
| STRETCH_DELETESCANS
| Same as COLORONCOLOR.
|
| STRETCH_HALFTONE
| Same as HALFTONE.
|
| STRETCH_ORSCANS
| Same as WHITEONBLACK.
|
| WHITEONBLACK
| 执行一个布尔或操作,使用待删除的存在的像素的颜色。如果位图是一个单色的位图,这个模式将保留白色的像素为黑色像素。
|
返回值:
如果函数成功,返回先前的伸展模式
如果失败,返回0
WINDOWS NT/2000/XP:使用GetLastError可以得到更多的信息,下面是其中之一:
| 值
| 意义
|
| ERROR_INVALID_PARAMETER
| 一到多个参数无效
|
备注:
伸展模式定义了程序调用StretchBlt函数的时候怎么样在显示设备上用存在的像素合并位图行或列。
BLACKONWHITE (STRETCH_ANDSCANS)和WHITEONBLACK (STRETCH_ORSCANS)典型的用来保留单色位图的前景像素。COLORONCOLOR (STRETCH_DELETESCANS)模式通常用来保留彩色位图中的颜色。
HALFTONE相对较慢,并要求更多的源图象处理,但提供较高的图像质量。同样SetBrushOrgEx也不惜是HALFTON模式以免刷子不对齐。
另外,伸展模式也依赖于设备驱动器的能力。
本文详细介绍了SetStretchBltMode函数的功能及其使用方法。该函数用于设置位图伸展模式,支持多种不同的伸展模式,如HALFTONE、BLACKONWHITE等,适用于不同类型的位图处理场景。
6249

被折叠的 条评论
为什么被折叠?



