zoukankan      html  css  js  c++  java
  • .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, 
    00, 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 

    结束语

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

  • 相关阅读:
    mojo 接口示例
    MojoliciousLite: 实时的web框架 概述
    接口返回json
    centos 6.7 perl 版本 This is perl 5, version 22 安装DBI DBD
    centos 6.7 perl 5.22 安装DBD 需要使用老的perl版本
    商业智能改变汽车行业
    商业智能改变汽车行业
    读MBA经历回顾(上)目的决定手段——北漂18年(48)
    perl 升级到5.20版本
    Group Commit of Binary Log
  • 原文地址:https://www.cnblogs.com/over140/p/1664832.html
Copyright © 2011-2022 走看看