• <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++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              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);//創(chuàng)建單色掩碼位圖
             CBitmap *pOldBMP = ImageDC.SelectObject(pBitmap);
             CBitmap *maskOldBMP = maskDC.SelectObject(&maskBMP);
             
             ImageDC.SetBkColor(clr);// 設(shè)置透明色
             maskDC.BitBlt(0, 0, nWidth, nHeight, &ImageDC, nXsrc, nYsrc, SRCCOPY);

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

             //設(shè)置背景色為白色,前景色為黑色,將掩碼位圖與背景進行“與”運算
             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();
            }

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

            Feedback

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

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

            伊人久久大香线蕉综合影院首页 | 国产精品亚洲综合久久| 国产精品成人99久久久久91gav| 久久最新精品国产| 国产亚洲精品美女久久久| 久久99精品国产| 亚洲欧美一级久久精品| .精品久久久麻豆国产精品| 久久亚洲av无码精品浪潮| 国产精品久久午夜夜伦鲁鲁| 久久久久人妻一区精品| 久久国产亚洲高清观看| 香蕉99久久国产综合精品宅男自 | 久久国产精品无码网站| 久久久一本精品99久久精品88| 91精品观看91久久久久久| 久久夜色精品国产亚洲| 久久99精品久久久久久9蜜桃 | 日韩久久久久久中文人妻| 亚洲国产精品久久久久婷婷软件| 久久精品青青草原伊人| 精品综合久久久久久88小说| 久久精品亚洲精品国产色婷 | 九九久久自然熟的香蕉图片| 久久人做人爽一区二区三区| 国产AV影片久久久久久| 欧美激情精品久久久久| 久久人人妻人人爽人人爽| 久久精品成人欧美大片| 欧洲国产伦久久久久久久| 精品水蜜桃久久久久久久| 99久久www免费人成精品| 7国产欧美日韩综合天堂中文久久久久 | 久久精品国产一区二区 | 久久久www免费人成精品| 亚洲欧美久久久久9999| 精品无码久久久久久国产| 久久播电影网| 日韩精品无码久久一区二区三| 一本久久精品一区二区| 久久亚洲AV成人无码软件|