SetStretchBltMode 函式 (wingdi.h)
SetStretchBltMode 函式會在指定的裝置內容中設定位圖延展模式。
語法
int SetStretchBltMode(
[in] HDC hdc,
[in] int mode
);
參數
[in] hdc
裝置內容的句柄。
[in] mode
延展模式。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
使用排除和現有圖元的色彩值來執行布爾 AND 運算。 如果點圖是單色位圖,此模式會保留黑色圖元,但代價是白色圖元。 |
|
刪除圖元。 此模式會刪除所有排除的圖元行,而不嘗試保留其資訊。 |
|
將來源矩形的像素對應至目的地矩形中的像素區塊。 圖元目的地區塊的平均色彩大約是來源圖元的色彩。
設定 HALFTONE 延展模式之後,應用程式必須呼叫 SetBrushOrgEx 函式來設定筆刷原點。 如果無法這麼做,就會發生筆刷對齊錯誤。 |
|
與 BLACKONWHITE 相同。 |
|
與 COLORONCOLOR 相同。 |
|
與 HALFTONE 相同。 |
|
與 WHITEONBLACK 相同。 |
|
使用消除和現有圖元的色彩值來執行布爾值 OR 作業。 如果點圖是單色位圖,此模式會保留白色圖元,但代價是黑色圖元。 |
傳回值
如果函式成功,則傳回值是先前的延展模式。
如果此函式失敗,則傳回值為零。
此函式可以傳回下列值。
傳回碼 | Description |
---|---|
|
一或多個輸入參數無效。 |
備註
延展模式會定義當應用程式呼叫 StretchBlt 函式時,系統如何將點陣圖的數據列或數據行與顯示裝置上的現有圖元結合。
BLACKONWHITE (STRETCH_ANDSCANS) 和 WHITEONBLACK (STRETCH_ORSCANS) 模式通常用於在單色位圖中保留前景圖元。 COLORONCOLOR (STRETCH_DELETESCANS) 模式通常用於保留色彩點圖中的色彩。
HALFTONE 模式速度較慢,而且需要比其他三種模式更多的來源影像處理;但會產生高品質的影像。 另請注意,在設定 HALFTONE 模式以避免筆刷對齊錯誤之後,必須呼叫 SetBrushOrgEx 。
視設備驅動器的功能而定,也可能提供其他延展模式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wingdi.h (包含 Windows.h) |
程式庫 | Gdi32.lib |
Dll | Gdi32.dll |