2011-09-29 50 views

回答

6

你不行。

按照MDSN page of MFC CDC::BitBlt

要轉換顏色爲單色,BitBlt的設置背景色搭配白色的像素,並將所有其它的像素爲黑色。 BitBlt使用顏色設備上下文的前景和背景顏色將顏色轉換爲單色。

和CDC :: BitBlt的調用:: BitBlt的:

_AFXWIN_INLINE BOOL CDC::BitBlt(int x, int y, int nWidth, int nHeight, CDC* pSrcDC, int xSrc, int ySrc, DWORD dwRop) 
{ 
    ASSERT(m_hDC != NULL); 
    return ::BitBlt(m_hDC, x, y, nWidth, nHeight, pSrcDC->GetSafeHdc(), xSrc, ySrc, dwRop); 
} 
+0

,我已經知道了,但背景顏色只能有一個值。我在問如何設置閾值,讓我們說所有值大於128的像素都被轉換爲白色。 –

+0

@Priyank Bolia:如上所述,你不能用BitBlt來完成。我會手動做。 –