SetStretchBltMode 函式 (wingdi.h)

SetStretchBltMode 函式會在指定的裝置內容中設定位圖延展模式。

語法

int SetStretchBltMode(
  [in] HDC hdc,
  [in] int mode
);

參數

[in] hdc

裝置內容的句柄。

[in] mode

延展模式。 此參數可以是下列其中一個值。

意義
BLACKONWHITE
使用排除和現有圖元的色彩值來執行布爾 AND 運算。 如果點圖是單色位圖,此模式會保留黑色圖元,但代價是白色圖元。
COLORONCOLOR
刪除圖元。 此模式會刪除所有排除的圖元行,而不嘗試保留其資訊。
半 色調
將來源矩形的像素對應至目的地矩形中的像素區塊。 圖元目的地區塊的平均色彩大約是來源圖元的色彩。

設定 HALFTONE 延展模式之後,應用程式必須呼叫 SetBrushOrgEx 函式來設定筆刷原點。 如果無法這麼做,就會發生筆刷對齊錯誤。

STRETCH_ANDSCANS
與 BLACKONWHITE 相同。
STRETCH_DELETESCANS
與 COLORONCOLOR 相同。
STRETCH_HALFTONE
與 HALFTONE 相同。
STRETCH_ORSCANS
與 WHITEONBLACK 相同。
WHITEONBLACK
使用消除和現有圖元的色彩值來執行布爾值 OR 作業。 如果點圖是單色位圖,此模式會保留白色圖元,但代價是黑色圖元。

傳回值

如果函式成功,則傳回值是先前的延展模式。

如果此函式失敗,則傳回值為零。

此函式可以傳回下列值。

傳回碼 Description
ERROR_INVALID_PARAMETER
一或多個輸入參數無效。

備註

延展模式會定義當應用程式呼叫 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

另請參閱

點陣圖函式

位圖概觀

GetStretchBltMode

SetBrushOrgEx

StretchBlt