.netcf 图片区域拷贝[图片切割]

前言
 

  关键字:.netcf  BitBlt、图片区域拷贝、图片切割
 

  接触Windows Mobile开发近一个月,陆陆续续有了一些小经验要和大家分享,希望对刚入门的朋友有所帮助 :)
 

正文

  一、效果图

 

 

二、实现代码

         const   int  SRCCOPY  =   0x00CC0020 ;

        
///   <summary>
        
///  拷贝图片的某一个区域,生成一个新图片
        
///   </summary>
        
///   <param name="bitSrc"></param>
        
///   <param name="rectDest"></param>
        
///   <returns></returns>
         public   static  Bitmap CopyBitmap(Bitmap bitSrc, Rectangle rectDest)
        {
            Bitmap result 
=   new  Bitmap(rectDest.Width, rectDest.Height);
            Graphics g1 
=  Graphics.FromImage(bitSrc);
            Graphics g2 
=  Graphics.FromImage(result);
            IntPtr hdc1 
=  g1.GetHdc();
            IntPtr hdc2 
=  g2.GetHdc();
            BitBlt(hdc2, 
0 0 , rectDest.Width, rectDest.Height, hdc1, rectDest.X, rectDest.Y, SRCCOPY);
            g1.ReleaseHdc(hdc1);
            g2.ReleaseHdc(hdc2);
            g1.Dispose();
            g2.Dispose();
            
return  result;
        }

        
///   <summary>
        
///  使用选定的刷子、源位图和ROP3码绘制选定的矩形
        
///  获得屏幕图形并将它写入内存中的一个位图中(截屏)
        
///   </summary>
        
///   <param name="hdcDest"> 目的上下文设备的句柄  </param>
        
///   <param name="nXDest"> 目的图形的左上角的x坐标  </param>
        
///   <param name="nYDest"> 目的图形的左上角的y坐标  </param>
        
///   <param name="nWidth"> 目的图形的矩形宽度  </param>
        
///   <param name="nHeight"> 目的图形的矩形高度  </param>
        
///   <param name="hdcSrc"> 源上下文设备的句柄 </param>
        
///   <param name="nXSrc"> 源图形的左上角的x坐标 </param>
        
///   <param name="nYSrc"> 源图形的左上角的x坐标 </param>
        
///   <param name="dwRop"> 光栅操作代码  </param>
        
///   <returns></returns>
        [DllImport( " CoreDLL.dll " )]
        
public   static   extern   bool  BitBlt(IntPtr hdcDest,  int  nXDest,  int  nYDest,  int  nWidth,  int  nHeight, IntPtr hdcSrc,  int  nXSrc,  int  nYSrc,  int  dwRop);


 

  三、下载
 

    BitBltCutImage2010-2-6.rar 

 

结束语

  由于接触时间有限,做起项目来比较吃力,手里可打的牌不多,还需要再积累积累,再坚持坚持,做上几个项目就会好很多的:)
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值