图片镂空算法集合[图]

本文介绍了在游戏开发中常见的图片镂空算法,包括基于指定透明色和掩码图的处理方法,适用于不同需求的图片资源,同时提供了相关代码实现。
摘要由CSDN通过智能技术生成

在开发界面及棋牌游戏过程中,需要很多镂空的图片,而且图片形式一般比较固定.

所以封装了几种常见的镂空方法.

1. 用于没有掩码图,只有指定透明色,不进行伸缩

void  DrawTransBitmap( HDC hdcDest,             //  目标DC
                                            int  nXOriginDest,        //  目标X偏移
                                             int  nYOriginDest,        //  目标Y偏移
                                             int  nWidthDest,          //  目标宽度
                                             int  nHeightDest,         //  目标高度
                                            HDC hdcSrc,               //  源DC
                                            int  nXOriginSrc,          //  源X起点
                                             int  nYOriginSrc,          //  源Y起点
                                            COLORREF crTransparent  //  透明色,COLORREF类型
                                        );

适用图片:

2. 用于没有掩码图,只有指定透明色,可以进行伸缩

  void  DrawTransBitmap( HDC hdcDest,       //  目标DC
                                              int  nXOriginDest,    //  目标X偏移
                                              int  nYOriginDest,    //  目标Y偏移
                                              int  nWidthDest,       //  目标宽度
                                              int  nHeightDest,     //  目标高度
                                             HDC hdcSrc,           //  源DC
                                              int  nXOriginSrc,      //  源X起点
                                             int  nYOriginSrc,      //  源Y起点
                                              int  nWidthSrc,         //  源宽度
                                              int  nHeightSrc,       //  源高度
                                             COLORREF crTransparent   //  透明色,COLORREF类型
      );

适用图片:同1,可拉伸

3.指定掩码图,和掩码图属于不同图片

  void  DrawTransBitmap( HDC hdcDest,         //  目标DC
                                              int  nXOriginDest,    //  目标X偏移
                                              int  nYOriginDest,    //  目标Y偏移
                                              int  nWidthDest,        //  目标宽度
                                              int  nHeightDest,     //  目标高度
                                             HDC hdcSrc,          //  源DC
                                             HDC hdcMask,        // 掩码DC
                                              int  nXOriginSrc,      //  源X起点
                                              int  nYOriginSrc,      //  源Y起点
                                            COLORREF crTransparent   //  透明色,COLORREF类型
                                          );

适用图片:  和

4.指定图片和掩码图同属于一张图片

void  DrawTransBitmap(HDC hDC, 
                                          
int  nPosX, 
                                           
int  nPosY,
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值