• <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| 色99久久久久高潮综合影院| 99久久99久久| 午夜不卡888久久| 99久久夜色精品国产网站| 久久这里只有精品首页| 久久久无码精品亚洲日韩京东传媒| 久久久免费精品re6| 武侠古典久久婷婷狼人伊人| 99精品久久久久中文字幕| 久久久久久久97| 久久久久香蕉视频| AV无码久久久久不卡蜜桃 | 99国产欧美久久久精品蜜芽| 深夜久久AAAAA级毛片免费看| 久久精品国内一区二区三区| 中文字幕无码精品亚洲资源网久久| 久久精品国产精品亚洲人人 | 尹人香蕉久久99天天拍| 久久精品国产精品亚洲下载 | 丁香五月综合久久激情| 久久香蕉超碰97国产精品| 久久91精品国产91久| 天天做夜夜做久久做狠狠| 久久国产精品二国产精品| 青青国产成人久久91网| 激情伊人五月天久久综合| 久久久久人妻一区精品色| 色偷偷偷久久伊人大杳蕉| 亚洲乱码精品久久久久..| 精品多毛少妇人妻AV免费久久| 久久天天躁狠狠躁夜夜不卡| 久久久久亚洲精品中文字幕| 久久无码AV中文出轨人妻 | 久久亚洲私人国产精品| 久久人人爽人人爽人人片AV不| 狠狠综合久久综合88亚洲 | 久久青青草原国产精品免费 | 伊人久久大香线蕉影院95| 久久精品中文字幕有码| 少妇久久久久久被弄到高潮 |