BITMAP bmp;int i,n_width,n_height;HBITMAP hbmp[4];//加载背景图片
HBITMAP hfullbmp=(HBITMAP)LoadImage(NULL,"bg.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);GetObject(hfullbmp,sizeof(BITMAP),&bmp);n_width=bmp.bmWidth;//背景图片宽度n_height=bmp.bmHeight;;//背景图片高度//假设背景图片宽度为16,高度为16 ,如何把图片分割成大小相等的4块,分别存入数组中for(i=0;i++;i<4)
{hbmp[i]=//如何写此处代码保存4图片呢?}

解决方案 »

  1.   

    看下这个吧,
    http://blog.csdn.net/fengrx/archive/2009/05/10/4163121.aspx有点类似。如果是个没有窗口的程序,则应该通过解析图片流,自己重新写BMP文件了。
      

  2.   

    getdibits,然后就是自己计算分......
      

  3.   

    考虑下bits的对齐,然后是位图数据的排列方式。自己计算数据开始和长度,用memset就搞定了。自己慢慢研究,对提高很有帮助。
      

  4.   

    是memcpy,头晕类 ,不好意思
      

  5.   

    既然都是文件的形式, 直接读bmp文件吧, 找一个Dib类很容易就做到了