• <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
            我的實現好像有點問題,謝謝提醒!  回復  更多評論
              

            国产成人精品久久免费动漫| 国产高清美女一级a毛片久久w | 久久亚洲色一区二区三区| 国产精品久久久天天影视香蕉| 国产精品99久久不卡| 久久国产成人精品麻豆| 亚洲精品无码久久毛片| 国产91色综合久久免费| 久久久久成人精品无码| 91久久精品91久久性色| 久久国产亚洲精品| 91麻精品国产91久久久久| 99精品久久精品一区二区| 国产99久久久国产精品~~牛| 久久久久青草线蕉综合超碰| 免费国产99久久久香蕉| 人妻少妇久久中文字幕一区二区 | 69SEX久久精品国产麻豆| 亚洲国产成人久久综合野外| 精品999久久久久久中文字幕| 国产毛片欧美毛片久久久| 久久影视综合亚洲| 日本福利片国产午夜久久| 国内精品久久久久久99蜜桃| 亚洲欧美成人久久综合中文网 | 成人资源影音先锋久久资源网| 久久www免费人成看片| 午夜精品久久久久久久无码| 久久精品中文字幕有码| 国产精品无码久久四虎| 办公室久久精品| 精品免费久久久久国产一区| 久久国产免费观看精品| 久久被窝电影亚洲爽爽爽| 久久99精品国产自在现线小黄鸭| 欧美牲交A欧牲交aⅴ久久| 久久久久人妻精品一区二区三区 | 久久这里只有精品视频99| 一级a性色生活片久久无| 久久中文字幕精品| 久久人人爽人人爽人人片AV不|