首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从彩色hDC到单色hDC的BitBlt?

从彩色hDC到单色hDC的BitBlt?
EN

Stack Overflow用户
提问于 2011-09-29 20:36:22
回答 1查看 667关注 0票数 1

我正在做从一个8位彩色DC到单色DC的BitBlt。问题是只有值为255的像素在单色DC中转换为白色。如何指定阈值,以便任何值大于128的像素在单色DC中显示为白色。

EN

回答 1

Stack Overflow用户

发布于 2011-09-29 21:09:25

你不能这么做。

根据MDSN page of MFC CDC::BitBlt的说法:

若要将颜色转换为单色,BitBlt会将与背景颜色匹配的像素设置为白色,并将所有其它像素设置为黑色。BitBlt使用颜色设备上下文的前景色和背景色将颜色转换为单色。

CDC::BitBlt调用::BitBlt:

代码语言:javascript
复制
_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);
}
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7597415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档