• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            KISS(Keep It Simple, Standard)

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              10 Posts :: 0 Stories :: 24 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(10)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            void TransparentBlt(CDC *pDestDC, int nXDest, int nYDest, int nWidth, int nHeight, CBitmap * pBitmap, int nXsrc, int nYsrc, COLORREF clr)
            {
             CDC maskDC, ImageDC;
             maskDC.CreateCompatibleDC(pDestDC);
             ImageDC.CreateCompatibleDC(pDestDC);

             CBitmap maskBMP;
             maskBMP.CreateBitmap(nWidth, nHeight, 1, 1, NULL);//創建單色掩碼位圖
             CBitmap *pOldBMP = ImageDC.SelectObject(pBitmap);
             CBitmap *maskOldBMP = maskDC.SelectObject(&maskBMP);
             
             ImageDC.SetBkColor(clr);// 設置透明色
             maskDC.BitBlt(0, 0, nWidth, nHeight, &ImageDC, nXsrc, nYsrc, SRCCOPY);

             //設置背景色為黑色,前景色為白色,將掩碼位圖與原位圖相"與"
             ImageDC.SetBkColor(RGB(0, 0, 0));
             ImageDC.SetTextColor(RGB(255, 255, 255));
             ImageDC.BitBlt(0, 0, nWidth, nHeight, &maskDC, nXsrc, nYsrc, SRCAND);

             //設置背景色為白色,前景色為黑色,將掩碼位圖與背景進行“與”運算
             pDestDC->SetBkColor(RGB(255, 255, 255));
             pDestDC->SetTextColor(RGB(0, 0, 0));
             pDestDC->BitBlt(nXDest, nYDest, nWidth, nHeight, &maskDC, nXsrc, nYsrc, SRCAND);
             // "或"運算,生成最終效果
             pDestDC->BitBlt(nXDest, nYDest, nWidth, nHeight, &ImageDC, nXsrc, nYsrc, SRCPAINT);

             if (pOldBMP) ImageDC.SelectObject(pOldBMP);
             ImageDC.DeleteDC();
             if (maskOldBMP) maskDC.SelectObject(maskOldBMP);
             maskDC.DeleteDC();
             if (maskBMP.m_hObject) maskBMP.DeleteObject();
            }

            我就不怎么解釋了!如不理解,請看我轉的(透明位圖的顯示中的(二、實現TransparentBlt函數)的原理),其他部分都就什么必要了!呵呵!
            posted on 2007-08-30 17:05 QUIRE-0216 閱讀(546) 評論(2)  編輯 收藏 引用 所屬分類: MFC

            Feedback

            # re: 透明位圖的顯示我的代碼實現 2007-12-26 10:58 test
            看了你做的 你是把邊緣藍色區別變白。。如果圖天前景數據中也有藍色 是不是也被變白了?   回復  更多評論
              

            # re: 透明位圖的顯示我的代碼實現 2008-07-11 10:27 QUIRE-0216
            @TEST
            我的實現好像有點問題,謝謝提醒!  回復  更多評論
              

            久久婷婷五月综合97色| 91亚洲国产成人久久精品| 久久亚洲国产成人精品无码区| 久久精品免费大片国产大片| 亚洲v国产v天堂a无码久久| 午夜精品久久久久久毛片| 久久国产精品久久久| 青青草原综合久久大伊人导航| 噜噜噜色噜噜噜久久| 久久亚洲精品中文字幕三区| 久久青青色综合| 91久久精品视频| 久久久无码人妻精品无码| 精品久久久久一区二区三区| 色88久久久久高潮综合影院| 久久精品成人欧美大片| 久久青青草原精品国产| 久久99国产精品久久99小说| 久久国产成人精品麻豆| 久久精品国产亚洲AV麻豆网站| 亚洲精品无码专区久久同性男| 成人午夜精品久久久久久久小说 | 久久99久久99小草精品免视看| 精品久久久久国产免费 | 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 色8激情欧美成人久久综合电| 无码AV波多野结衣久久| 无码人妻久久一区二区三区蜜桃 | 久久精品国产亚洲一区二区三区| 1000部精品久久久久久久久| 国产成人精品久久| 精品久久久久久久久免费影院| 天天综合久久久网| 久久本道久久综合伊人| 久久精品中文字幕有码| 精品久久久久久无码中文字幕| 国产亚州精品女人久久久久久| 99久久免费国产精精品| 色综合久久88色综合天天| 国产成人香蕉久久久久| 国产精品美女久久久久AV福利 |