• <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 閱讀(560) 評論(2)  編輯 收藏 引用 所屬分類: MFC

            Feedback

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

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

            久久国产色AV免费观看| 狠狠色丁香久久综合婷婷| 国产精品一区二区久久精品涩爱 | 亚洲中文字幕久久精品无码APP| 久久久久亚洲AV无码专区首JN| 久久精品九九亚洲精品| 久久人人爽人人澡人人高潮AV | 精品久久久久一区二区三区| 久久这里的只有是精品23| 精品一区二区久久| 天天爽天天狠久久久综合麻豆| 国产精品免费久久久久久久久| 婷婷伊人久久大香线蕉AV| 久久久久九九精品影院| 99久久久精品| 国产成年无码久久久久毛片| 久久综合精品国产一区二区三区| 91精品国产乱码久久久久久 | 久久精品中文字幕无码绿巨人 | 精品国产VA久久久久久久冰| 久久只这里是精品66| 久久久久久极精品久久久| 久久免费小视频| 久久综合给久久狠狠97色| 亚洲精品无码久久久久久| 精品人妻伦九区久久AAA片69| 性高湖久久久久久久久AAAAA| 精品久久久久久无码中文字幕| 91久久福利国产成人精品| 久久er国产精品免费观看2| 人妻无码久久一区二区三区免费 | 精品亚洲综合久久中文字幕| 精品久久久久久无码中文字幕一区| 亚洲精品乱码久久久久久自慰| 伊人久久大香线蕉综合Av| 亚洲人成网亚洲欧洲无码久久 | 亚洲精品国产第一综合99久久| 久久久久18| 国产精品乱码久久久久久软件| 香蕉久久久久久狠狠色| 亚洲人成伊人成综合网久久久|